Differential D15753 Diff 55618 source/blender/draw/engines/eevee_next/shaders/infos/eevee_film_info.hh
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/eevee_next/shaders/infos/eevee_film_info.hh
| Show All 15 Lines | GPU_SHADER_CREATE_INFO(eevee_film) | ||||
| .sampler(8, ImageType::FLOAT_2D, "emission_tx") | .sampler(8, ImageType::FLOAT_2D, "emission_tx") | ||||
| .sampler(9, ImageType::FLOAT_2D, "environment_tx") | .sampler(9, ImageType::FLOAT_2D, "environment_tx") | ||||
| .sampler(10, ImageType::FLOAT_2D, "shadow_tx") | .sampler(10, ImageType::FLOAT_2D, "shadow_tx") | ||||
| .sampler(11, ImageType::FLOAT_2D, "ambient_occlusion_tx") | .sampler(11, ImageType::FLOAT_2D, "ambient_occlusion_tx") | ||||
| .sampler(12, ImageType::FLOAT_2D_ARRAY, "aov_color_tx") | .sampler(12, ImageType::FLOAT_2D_ARRAY, "aov_color_tx") | ||||
| .sampler(13, ImageType::FLOAT_2D_ARRAY, "aov_value_tx") | .sampler(13, ImageType::FLOAT_2D_ARRAY, "aov_value_tx") | ||||
| /* Color History for TAA needs to be sampler to leverage bilinear sampling. */ | /* Color History for TAA needs to be sampler to leverage bilinear sampling. */ | ||||
| .sampler(14, ImageType::FLOAT_2D, "in_combined_tx") | .sampler(14, ImageType::FLOAT_2D, "in_combined_tx") | ||||
| // .sampler(15, ImageType::FLOAT_2D, "cryptomatte_tx") /* TODO */ | .sampler(15, ImageType::FLOAT_2D, "cryptomatte_tx") | ||||
| .image(0, GPU_R32F, Qualifier::READ, ImageType::FLOAT_2D_ARRAY, "in_weight_img") | .image(0, GPU_R32F, Qualifier::READ, ImageType::FLOAT_2D_ARRAY, "in_weight_img") | ||||
| .image(1, GPU_R32F, Qualifier::WRITE, ImageType::FLOAT_2D_ARRAY, "out_weight_img") | .image(1, GPU_R32F, Qualifier::WRITE, ImageType::FLOAT_2D_ARRAY, "out_weight_img") | ||||
| /* Color History for TAA needs to be sampler to leverage bilinear sampling. */ | /* Color History for TAA needs to be sampler to leverage bilinear sampling. */ | ||||
| //.image(2, GPU_RGBA16F, Qualifier::READ, ImageType::FLOAT_2D, "in_combined_img") | //.image(2, GPU_RGBA16F, Qualifier::READ, ImageType::FLOAT_2D, "in_combined_img") | ||||
| .image(3, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "out_combined_img") | .image(3, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "out_combined_img") | ||||
| .image(4, GPU_R32F, Qualifier::READ_WRITE, ImageType::FLOAT_2D, "depth_img") | .image(4, GPU_R32F, Qualifier::READ_WRITE, ImageType::FLOAT_2D, "depth_img") | ||||
| .image(5, GPU_RGBA16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "color_accum_img") | .image(5, GPU_RGBA16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "color_accum_img") | ||||
| .image(6, GPU_R16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "value_accum_img") | .image(6, GPU_R16F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "value_accum_img") | ||||
| .image(7, GPU_RGBA32F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "cryptomatte_img") | |||||
| .additional_info("eevee_shared") | .additional_info("eevee_shared") | ||||
| .additional_info("eevee_velocity_camera") | .additional_info("eevee_velocity_camera") | ||||
| .additional_info("draw_view"); | .additional_info("draw_view"); | ||||
| GPU_SHADER_CREATE_INFO(eevee_film_frag) | GPU_SHADER_CREATE_INFO(eevee_film_frag) | ||||
| .do_static_compilation(true) | .do_static_compilation(true) | ||||
| .fragment_out(0, Type::VEC4, "out_color") | .fragment_out(0, Type::VEC4, "out_color") | ||||
| .fragment_source("eevee_film_frag.glsl") | .fragment_source("eevee_film_frag.glsl") | ||||
| .additional_info("draw_fullscreen", "eevee_film"); | .additional_info("draw_fullscreen", "eevee_film"); | ||||
| GPU_SHADER_CREATE_INFO(eevee_film_comp) | GPU_SHADER_CREATE_INFO(eevee_film_comp) | ||||
| .do_static_compilation(true) | .do_static_compilation(true) | ||||
| .local_group_size(FILM_GROUP_SIZE, FILM_GROUP_SIZE) | .local_group_size(FILM_GROUP_SIZE, FILM_GROUP_SIZE) | ||||
| .compute_source("eevee_film_comp.glsl") | .compute_source("eevee_film_comp.glsl") | ||||
| .additional_info("eevee_film"); | .additional_info("eevee_film"); | ||||
| GPU_SHADER_CREATE_INFO(eevee_film_cryptomatte_post) | |||||
| .do_static_compilation(true) | |||||
| .image(0, GPU_RGBA32F, Qualifier::READ_WRITE, ImageType::FLOAT_2D_ARRAY, "cryptomatte_img") | |||||
| .image(1, GPU_R32F, Qualifier::READ, ImageType::FLOAT_2D_ARRAY, "weight_img") | |||||
| .push_constant(Type::INT, "cryptomatte_layer_len") | |||||
| .push_constant(Type::INT, "cryptomatte_samples_per_layer") | |||||
| .local_group_size(FILM_GROUP_SIZE, FILM_GROUP_SIZE) | |||||
| .compute_source("eevee_film_cryptomatte_post_comp.glsl") | |||||
| .additional_info("eevee_shared"); | |||||