Blender Git Loki
Git Commits -> Revision da74101
Revision da74101 by Clément Foucault (master) July 30, 2020, 14:44 (GMT) |
EEVEE: GLSL refactor/cleanup - add the use of DRWShaderLibrary to EEVEE's glsl codebase to reduce code complexity and duplication. - split bsdf_common_lib.glsl into multiple sub library which are now shared with other engines. - the surface shader code is now more organised and have its own files. - change default world to use a material nodetree and make lookdev shader more clear. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D8306 |
Commit Details:
Full Hash: da741013a1e1b2e7c4f61a9486588253a457afd2
Parent Commit: 55401fb
Lines Changed: +2391, -2901
10 Added Paths:
/source/blender/draw/engines/eevee/shaders/closure_lib.glsl (+181, -0) (View)
/source/blender/draw/engines/eevee/shaders/closure_lit_lib.glsl (+542, -0) (View)
/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl (+65, -0) (View)
/source/blender/draw/engines/eevee/shaders/lookdev_world_frag.glsl (+52, -0) (View)
/source/blender/draw/engines/eevee/shaders/renderpass_lib.glsl (+43, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_frag.glsl (+89, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_geom.glsl (+46, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_lib.glsl (+43, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_vert.glsl (+60, -0) (View)
/source/blender/gpu/shaders/gpu_shader_codegen_lib.glsl (+87, -0) (View)
/source/blender/draw/engines/eevee/shaders/closure_lit_lib.glsl (+542, -0) (View)
/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl (+65, -0) (View)
/source/blender/draw/engines/eevee/shaders/lookdev_world_frag.glsl (+52, -0) (View)
/source/blender/draw/engines/eevee/shaders/renderpass_lib.glsl (+43, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_frag.glsl (+89, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_geom.glsl (+46, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_lib.glsl (+43, -0) (View)
/source/blender/draw/engines/eevee/shaders/surface_vert.glsl (+60, -0) (View)
/source/blender/gpu/shaders/gpu_shader_codegen_lib.glsl (+87, -0) (View)
4 Deleted Paths:
/source/blender/draw/engines/eevee/shaders/default_frag.glsl (+0, -51)
/source/blender/draw/engines/eevee/shaders/default_world_frag.glsl (+0, -71)
/source/blender/draw/engines/eevee/shaders/lit_surface_frag.glsl (+0, -566)
/source/blender/draw/engines/eevee/shaders/lit_surface_vert.glsl (+0, -69)
/source/blender/draw/engines/eevee/shaders/default_world_frag.glsl (+0, -71)
/source/blender/draw/engines/eevee/shaders/lit_surface_frag.glsl (+0, -566)
/source/blender/draw/engines/eevee/shaders/lit_surface_vert.glsl (+0, -69)
87 Modified Paths:
/source/blender/draw/CMakeLists.txt (+11, -5) (Diff)
/source/blender/draw/engines/eevee/eevee_depth_of_field.c (+21, -15) (Diff)
/source/blender/draw/engines/eevee/eevee_lightprobes.c (+14, -24) (Diff)
/source/blender/draw/engines/eevee/eevee_lookdev.c (+77, -79) (Diff)
/source/blender/draw/engines/eevee/eevee_lut_gen.c (+11, -17) (Diff)
/source/blender/draw/engines/eevee/eevee_materials.c (+14, -105) (Diff)
/source/blender/draw/engines/eevee/eevee_mist.c (+6, -10) (Diff)
/source/blender/draw/engines/eevee/eevee_motion_blur.c (+16, -20) (Diff)
/source/blender/draw/engines/eevee/eevee_occlusion.c (+8, -11) (Diff)
/source/blender/draw/engines/eevee/eevee_private.h (+7, -10) (Diff)
/source/blender/draw/engines/eevee/eevee_renderpasses.c (+4, -6) (Diff)
/source/blender/draw/engines/eevee/eevee_screen_raytrace.c (+3, -21) (Diff)
/source/blender/draw/engines/eevee/eevee_shaders.c (+227, -238) (Diff)
/source/blender/draw/engines/eevee/eevee_shadows.c (+5, -20) (Diff)
/source/blender/draw/engines/eevee/eevee_subsurface.c (+8, -30) (Diff)
/source/blender/draw/engines/eevee/eevee_volumes.c (+40, -61) (Diff)
/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl (+8, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/background_vert.glsl (+9, -9) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_common_lib.glsl (+3, -874) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_lut_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_sampling_lib.glsl (+8, -3) (Diff)
/source/blender/draw/engines/eevee/shaders/btdf_lut_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/common_uniforms_lib.glsl (+6, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_dof_frag.glsl (+4, -8) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_dof_vert.glsl (+2, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_gtao_frag.glsl (+23, -15) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_mist_frag.glsl (+5, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_motion_blur_frag.glsl (+2, -5) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_ssr_frag.glsl (+8, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_subsurface_frag.glsl (+7, -22) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_temporal_aa.glsl (+6, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl (+6, -7) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_velocity_resolve_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl (+56, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_frag.glsl (+3, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_diffuse_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_glossy_frag.glsl (+3, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_visibility_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_geom.glsl (+0, -3) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_lib.glsl (+10, -10) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_planar_display_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_planar_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lights_lib.glsl (+87, -8) (Diff)
/source/blender/draw/engines/eevee/shaders/ltc_lib.glsl (+0, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/object_motion_vert.glsl (+5, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/prepass_frag.glsl (+10, -4) (Diff)
/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl (+4, -7) (Diff)
/source/blender/draw/engines/eevee/shaders/raytrace_lib.glsl (+8, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/renderpass_postprocess_frag.glsl (+6, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/shadow_accum_frag.glsl (+6, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/shadow_vert.glsl (+12, -24) (Diff)
/source/blender/draw/engines/eevee/shaders/ssr_lib.glsl (+7, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/update_noise_frag.glsl (+2, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_geom.glsl (+8, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_integration_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl (+11, -11) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_resolve_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_scatter_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl (+7, -1) (Diff)
/source/blender/draw/engines/overlay/shaders/antialiasing_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/overlay/shaders/armature_sphere_solid_frag.glsl (+0, -13) (Diff)
/source/blender/draw/engines/overlay/shaders/grid_frag.glsl (+0, -2) (Diff)
/source/blender/draw/engines/overlay/shaders/grid_vert.glsl (+0, -2) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_cavity_lib.glsl (+2, -2) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_common_lib.glsl (+0, -28) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl (+1, -1) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl (+3, -7) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_transparent_accum_frag.glsl (+1, -1) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_volume_frag.glsl (+3, -7) (Diff)
/source/blender/draw/engines/workbench/workbench_shader.c (+4, -0) (Diff)
/source/blender/draw/intern/draw_manager_shader.c (+8, -4) (Diff)
/source/blender/draw/intern/DRW_render.h (+15, -2) (Diff)
/source/blender/draw/intern/shaders/common_hair_lib.glsl (+21, -1) (Diff)
/source/blender/draw/intern/shaders/common_view_lib.glsl (+99, -8) (Diff)
/source/blender/gpu/CMakeLists.txt (+2, -0) (Diff)
/source/blender/gpu/GPU_material.h (+10, -1) (Diff)
/source/blender/gpu/intern/gpu_codegen.c (+126, -345) (Diff)
/source/blender/gpu/intern/gpu_material.c (+6, -2) (Diff)
/source/blender/gpu/intern/gpu_shader.cc (+11, -2) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_ambient_occlusion.glsl (+1, -1) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_hair_info.glsl (+12, -0) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_world_normals.glsl (+1, -1) (Diff)
/source/blender/nodes/shader/nodes/node_shader_geometry.c (+3, -0) (Diff)
/source/blender/nodes/shader/nodes/node_shader_wireframe.c (+1, -0) (Diff)
/source/blender/draw/engines/eevee/eevee_depth_of_field.c (+21, -15) (Diff)
/source/blender/draw/engines/eevee/eevee_lightprobes.c (+14, -24) (Diff)
/source/blender/draw/engines/eevee/eevee_lookdev.c (+77, -79) (Diff)
/source/blender/draw/engines/eevee/eevee_lut_gen.c (+11, -17) (Diff)
/source/blender/draw/engines/eevee/eevee_materials.c (+14, -105) (Diff)
/source/blender/draw/engines/eevee/eevee_mist.c (+6, -10) (Diff)
/source/blender/draw/engines/eevee/eevee_motion_blur.c (+16, -20) (Diff)
/source/blender/draw/engines/eevee/eevee_occlusion.c (+8, -11) (Diff)
/source/blender/draw/engines/eevee/eevee_private.h (+7, -10) (Diff)
/source/blender/draw/engines/eevee/eevee_renderpasses.c (+4, -6) (Diff)
/source/blender/draw/engines/eevee/eevee_screen_raytrace.c (+3, -21) (Diff)
/source/blender/draw/engines/eevee/eevee_shaders.c (+227, -238) (Diff)
/source/blender/draw/engines/eevee/eevee_shadows.c (+5, -20) (Diff)
/source/blender/draw/engines/eevee/eevee_subsurface.c (+8, -30) (Diff)
/source/blender/draw/engines/eevee/eevee_volumes.c (+40, -61) (Diff)
/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl (+8, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/background_vert.glsl (+9, -9) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_common_lib.glsl (+3, -874) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_lut_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/bsdf_sampling_lib.glsl (+8, -3) (Diff)
/source/blender/draw/engines/eevee/shaders/btdf_lut_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/common_uniforms_lib.glsl (+6, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_dof_frag.glsl (+4, -8) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_dof_vert.glsl (+2, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_gtao_frag.glsl (+23, -15) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_mist_frag.glsl (+5, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_motion_blur_frag.glsl (+2, -5) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_ssr_frag.glsl (+8, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_subsurface_frag.glsl (+7, -22) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_temporal_aa.glsl (+6, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl (+6, -7) (Diff)
/source/blender/draw/engines/eevee/shaders/effect_velocity_resolve_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/irradiance_lib.glsl (+56, -1) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_frag.glsl (+3, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_diffuse_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_glossy_frag.glsl (+3, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_filter_visibility_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_geom.glsl (+0, -3) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_lib.glsl (+10, -10) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_planar_display_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lightprobe_planar_display_vert.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/lights_lib.glsl (+87, -8) (Diff)
/source/blender/draw/engines/eevee/shaders/ltc_lib.glsl (+0, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/object_motion_vert.glsl (+5, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/prepass_frag.glsl (+10, -4) (Diff)
/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl (+4, -7) (Diff)
/source/blender/draw/engines/eevee/shaders/raytrace_lib.glsl (+8, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/renderpass_postprocess_frag.glsl (+6, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/shadow_accum_frag.glsl (+6, -6) (Diff)
/source/blender/draw/engines/eevee/shaders/shadow_vert.glsl (+12, -24) (Diff)
/source/blender/draw/engines/eevee/shaders/ssr_lib.glsl (+7, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/update_noise_frag.glsl (+2, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_frag.glsl (+3, -2) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_geom.glsl (+8, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_integration_frag.glsl (+4, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl (+11, -11) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_resolve_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_scatter_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl (+7, -1) (Diff)
/source/blender/draw/engines/overlay/shaders/antialiasing_frag.glsl (+2, -0) (Diff)
/source/blender/draw/engines/overlay/shaders/armature_sphere_solid_frag.glsl (+0, -13) (Diff)
/source/blender/draw/engines/overlay/shaders/grid_frag.glsl (+0, -2) (Diff)
/source/blender/draw/engines/overlay/shaders/grid_vert.glsl (+0, -2) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_cavity_lib.glsl (+2, -2) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_common_lib.glsl (+0, -28) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl (+1, -1) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl (+3, -7) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_transparent_accum_frag.glsl (+1, -1) (Diff)
/source/blender/draw/engines/workbench/shaders/workbench_volume_frag.glsl (+3, -7) (Diff)
/source/blender/draw/engines/workbench/workbench_shader.c (+4, -0) (Diff)
/source/blender/draw/intern/draw_manager_shader.c (+8, -4) (Diff)
/source/blender/draw/intern/DRW_render.h (+15, -2) (Diff)
/source/blender/draw/intern/shaders/common_hair_lib.glsl (+21, -1) (Diff)
/source/blender/draw/intern/shaders/common_view_lib.glsl (+99, -8) (Diff)
/source/blender/gpu/CMakeLists.txt (+2, -0) (Diff)
/source/blender/gpu/GPU_material.h (+10, -1) (Diff)
/source/blender/gpu/intern/gpu_codegen.c (+126, -345) (Diff)
/source/blender/gpu/intern/gpu_material.c (+6, -2) (Diff)
/source/blender/gpu/intern/gpu_shader.cc (+11, -2) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_ambient_occlusion.glsl (+1, -1) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_hair_info.glsl (+12, -0) (Diff)
/source/blender/gpu/shaders/material/gpu_shader_material_world_normals.glsl (+1, -1) (Diff)
/source/blender/nodes/shader/nodes/node_shader_geometry.c (+3, -0) (Diff)
/source/blender/nodes/shader/nodes/node_shader_wireframe.c (+1, -0) (Diff)