From 98f117b172db95eedd318115090b24040043a00d Mon Sep 17 00:00:00 2001 From: Cody Winchester Date: Tue, 10 Feb 2026 20:57:58 -0600 Subject: [PATCH] GOOENGINE: Fix self shadow broken from last push --- .../shaders/infos/eevee_legacy_material_info.hh | 14 +++++++------- .../engines/gooengine/shaders/prepass_frag.glsl | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/source/blender/draw/engines/gooengine/shaders/infos/eevee_legacy_material_info.hh b/source/blender/draw/engines/gooengine/shaders/infos/eevee_legacy_material_info.hh index 350dc31d3b0..80196ecedfe 100644 --- a/source/blender/draw/engines/gooengine/shaders/infos/eevee_legacy_material_info.hh +++ b/source/blender/draw/engines/gooengine/shaders/infos/eevee_legacy_material_info.hh @@ -140,7 +140,7 @@ GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_common) .additional_info("eevee_legacy_common_lib") .additional_info("eevee_legacy_common_utiltex_lib") .additional_info("draw_view") - /* .fragment_out(1, Type::UINT, "resource_id_out") */ + .fragment_out(1, Type::UINT, "resource_id_out") .additional_info("eevee_legacy_closure_eval_surface_lib"); /* Common info for all `prepass_frag_opaque` variants. */ @@ -150,18 +150,18 @@ GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_opaque_common) GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_opaque) .additional_info("eevee_legacy_surface_lib_common") .additional_info("eevee_legacy_material_prepass_frag_opaque_common") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_opaque_hair) .additional_info("eevee_legacy_surface_lib_hair") .additional_info("eevee_legacy_material_prepass_frag_opaque_common") .additional_info("draw_hair") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_opaque_pointcloud) .additional_info("eevee_legacy_material_prepass_frag_opaque_common") .additional_info("draw_pointcloud") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); /* Common info for all `prepass_frag_alpha_hash` variants. */ GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_alpha_hash_common) @@ -172,19 +172,19 @@ GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_alpha_hash_common) GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_alpha_hash) .additional_info("eevee_legacy_surface_lib_common") .additional_info("eevee_legacy_material_prepass_frag_alpha_hash_common") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_alpha_hash_hair) .additional_info("eevee_legacy_surface_lib_hair") .additional_info("eevee_legacy_material_prepass_frag_alpha_hash_common") .additional_info("draw_hair") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); GPU_SHADER_CREATE_INFO(eevee_legacy_material_prepass_frag_alpha_hash_pointcloud) .additional_info("eevee_legacy_surface_lib_pointcloud") .additional_info("eevee_legacy_material_prepass_frag_alpha_hash_common") .additional_info("draw_pointcloud") - .fragment_out(1, Type::VEC2, "out_normal"); + .fragment_out(2, Type::VEC2, "out_normal"); /* Shadow Variants (Same as prepass but NO Normal Output) */ diff --git a/source/blender/draw/engines/gooengine/shaders/prepass_frag.glsl b/source/blender/draw/engines/gooengine/shaders/prepass_frag.glsl index b97390a7358..dadd396dba1 100644 --- a/source/blender/draw/engines/gooengine/shaders/prepass_frag.glsl +++ b/source/blender/draw/engines/gooengine/shaders/prepass_frag.glsl @@ -92,7 +92,7 @@ void main() } #endif - /* resource_id_out = resource_id; */ + resource_id_out = resource_id; /* GooEngine Fix: Output Normal to RG16 buffer (Loc 1). * Use viewNormal from vertex shader interface, which is always initialized. * g_data.N is only initialized when USE_ALPHA_HASH is defined. */