diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2022-06-28 19:33:25 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2022-06-30 23:45:42 +0300 |
commit | f18067aa032a35e8a6cc990b5c250567d0f4d78f (patch) | |
tree | d7521c5a487952d2f9855ba7492943a6713b0516 /source/blender/draw/engines/eevee_next/eevee_shader.cc | |
parent | a9696f04a012ce23ef419afe489378d1ce840638 (diff) |
EEVEE-Next: Add Film and RenderBuffers module
This modules handles renderpasses allocation and filling. Also handles
blitting to viewport framebuffer and render result reading.
Changes against the old implementation:
- the filling of the renderpasses happens all at once requiring
only 1 geometry pass.
- The filtering is optimized with weights precomputed on CPU and
reuse of neighboor pixels.
- Only one accumulation buffer for renderpasses (no ping-pong).
- Accumulation happens in one pass for every passes using a single
dispatch or fullscreen triangle pass.
TAA and history reprojection is not yet implemented.
AOVs support is present but with a 16 AOV limit for now.
Cryptomatte is not yet implemented.
Diffstat (limited to 'source/blender/draw/engines/eevee_next/eevee_shader.cc')
-rw-r--r-- | source/blender/draw/engines/eevee_next/eevee_shader.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/draw/engines/eevee_next/eevee_shader.cc b/source/blender/draw/engines/eevee_next/eevee_shader.cc index 09aa97e49e9..f5d4af2914e 100644 --- a/source/blender/draw/engines/eevee_next/eevee_shader.cc +++ b/source/blender/draw/engines/eevee_next/eevee_shader.cc @@ -78,6 +78,10 @@ ShaderModule::~ShaderModule() const char *ShaderModule::static_shader_create_info_name_get(eShaderType shader_type) { switch (shader_type) { + case FILM_FRAG: + return "eevee_film_frag"; + case FILM_COMP: + return "eevee_film_comp"; case VELOCITY_RESOLVE: return "eevee_velocity_resolve"; /* To avoid compiler warning about missing case. */ @@ -161,7 +165,6 @@ void ShaderModule::material_create_info_ammend(GPUMaterial *gpumat, GPUCodegenOu } } info.vertex_inputs_.clear(); - info.additional_info("draw_curves_infos"); break; case MAT_GEOM_WORLD: /** |