EEVEE Next: Subsurface Scattering #107407

Merged
Miguel Pozo merged 24 commits from pragma37/blender:pull-eevee-next-sss into main 2023-06-15 15:49:12 +02:00
3 changed files with 7 additions and 9 deletions
Showing only changes of commit 8127efbaa4 - Show all commits

View File

@ -95,8 +95,8 @@
/* Only during shadow rendering. */
#define SHADOW_RENDER_MAP_SLOT 13
#define RBUFS_UTILITY_TEX_SLOT 14
/* TODO(Miguel Pozo): Set the correct slot. */
#define SSS_TRANSMITTANCE_TEX_SLOT 28
#define HIZ_TEX_SLOT 15
#define SSS_TRANSMITTANCE_TEX_SLOT 16
pragma37 marked this conversation as resolved Outdated

Do not use slot 16 (or anything above slot 15). It is not available in all implementations.

Do not use slot 16 (or anything above slot 15). It is not available in all implementations.
/* Images. */
#define RBUFS_NORMAL_SLOT 0

View File

@ -4,7 +4,7 @@
#include "gpu_shader_create_info.hh"
GPU_SHADER_CREATE_INFO(eevee_hiz_data)
.sampler(15, ImageType::FLOAT_2D, "hiz_tx")
.sampler(HIZ_TEX_SLOT, ImageType::FLOAT_2D, "hiz_tx")
.uniform_buf(5, "HiZData", "hiz_buf");
GPU_SHADER_CREATE_INFO(eevee_hiz_update)

View File

@ -188,15 +188,13 @@ GPU_SHADER_CREATE_INFO(eevee_subsurface_eval)
.do_static_compilation(true)
.additional_info("eevee_shared")
.uniform_buf(1, "SubsurfaceData", "sss_buf")
.uniform_buf(2, "HiZData", "hiz_buf")
.sampler(0, ImageType::FLOAT_2D, "hiz_tx")
.sampler(1, ImageType::FLOAT_2D_ARRAY, "gbuffer_closure_tx")
.sampler(2, ImageType::FLOAT_2D_ARRAY, "gbuffer_color_tx")
.sampler(3, ImageType::FLOAT_2D, "radiance_tx")
.sampler(0, ImageType::FLOAT_2D_ARRAY, "gbuffer_closure_tx")
.sampler(1, ImageType::FLOAT_2D_ARRAY, "gbuffer_color_tx")
.sampler(2, ImageType::FLOAT_2D, "radiance_tx")
.fragment_out(0, Type::VEC4, "out_combined")
.fragment_source("eevee_subsurface_eval_frag.glsl")
/* TODO(fclem) Output to diffuse pass without feedback loop. */
.additional_info("draw_fullscreen", "draw_view");
.additional_info("draw_fullscreen", "draw_view", "eevee_hiz_data");
#undef image_out
#undef image_array_out