Blender  V3.3
eevee_film_info.hh
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #include "eevee_defines.hh"
5 
7  .uniform_buf(4, "FilmData", "film_buf")
8  .sampler(0, ImageType::DEPTH_2D, "depth_tx")
9  .sampler(1, ImageType::FLOAT_2D, "combined_tx")
10  .sampler(2, ImageType::FLOAT_2D, "normal_tx")
11  .sampler(3, ImageType::FLOAT_2D, "vector_tx")
12  .sampler(4, ImageType::FLOAT_2D, "diffuse_light_tx")
13  .sampler(5, ImageType::FLOAT_2D, "diffuse_color_tx")
14  .sampler(6, ImageType::FLOAT_2D, "specular_light_tx")
15  .sampler(7, ImageType::FLOAT_2D, "specular_color_tx")
16  .sampler(8, ImageType::FLOAT_2D, "volume_light_tx")
17  .sampler(9, ImageType::FLOAT_2D, "emission_tx")
18  .sampler(10, ImageType::FLOAT_2D, "environment_tx")
19  .sampler(11, ImageType::FLOAT_2D, "shadow_tx")
20  .sampler(12, ImageType::FLOAT_2D, "ambient_occlusion_tx")
21  .sampler(13, ImageType::FLOAT_2D_ARRAY, "aov_color_tx")
22  .sampler(14, ImageType::FLOAT_2D_ARRAY, "aov_value_tx")
23  /* Color History for TAA needs to be sampler to leverage bilinear sampling. */
24  .sampler(15, ImageType::FLOAT_2D, "in_combined_tx")
25  // .sampler(15, ImageType::FLOAT_2D, "cryptomatte_tx") /* TODO */
26  .image(0, GPU_R32F, Qualifier::READ, ImageType::FLOAT_2D_ARRAY, "in_weight_img")
27  .image(1, GPU_R32F, Qualifier::WRITE, ImageType::FLOAT_2D_ARRAY, "out_weight_img")
28  /* Color History for TAA needs to be sampler to leverage bilinear sampling. */
29  //.image(2, GPU_RGBA16F, Qualifier::READ, ImageType::FLOAT_2D, "in_combined_img")
30  .image(3, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "out_combined_img")
31  .image(4, GPU_R32F, Qualifier::READ_WRITE, ImageType::FLOAT_2D, "depth_img")
32  .image(5, GPU_RGBA16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "color_accum_img")
33  .image(6, GPU_R16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "value_accum_img")
34  .additional_info("eevee_shared")
35  .additional_info("eevee_velocity_camera")
36  .additional_info("draw_view");
37 
38 GPU_SHADER_CREATE_INFO(eevee_film_frag)
39  .do_static_compilation(true)
40  .fragment_out(0, Type::VEC4, "out_color")
41  .fragment_source("eevee_film_frag.glsl")
42  .additional_info("draw_fullscreen", "eevee_film");
43 
44 GPU_SHADER_CREATE_INFO(eevee_film_comp)
45  .do_static_compilation(true)
46  .local_group_size(FILM_GROUP_SIZE, FILM_GROUP_SIZE)
47  .compute_source("eevee_film_comp.glsl")
48  .additional_info("eevee_film");
@ GPU_R16F
Definition: GPU_texture.h:113
#define FILM_GROUP_SIZE
depth_tx normal_tx diffuse_light_tx specular_light_tx volume_light_tx environment_tx ambient_occlusion_tx aov_value_tx in_weight_img GPU_RGBA16F
depth_tx normal_tx diffuse_light_tx specular_light_tx volume_light_tx environment_tx ambient_occlusion_tx aov_value_tx GPU_R32F
out_color eevee_film
#define GPU_SHADER_CREATE_INFO(_info)