From 3ee0413e8ad55612f58c4c9bf0f8e3f821326c1c Mon Sep 17 00:00:00 2001 From: Antoine Pilote Date: Tue, 1 Aug 2023 18:49:38 -0400 Subject: [PATCH] Added alpha scisorring --- Editor/resources/Shaders/gbuffer.shader | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/Editor/resources/Shaders/gbuffer.shader b/Editor/resources/Shaders/gbuffer.shader index 9d7aa722..6b0a7aa7 100644 --- a/Editor/resources/Shaders/gbuffer.shader +++ b/Editor/resources/Shaders/gbuffer.shader @@ -23,7 +23,6 @@ void main() //T = normalize(T - dot(T, N) * N); //vec3 B = cross(N, T); - vec3 T = normalize((u_Model * vec4(Tangent, 0.0f)).xyz); vec3 N = normalize((u_Model * vec4(Normal, 0.0f)).xyz); vec3 B = normalize((u_Model * vec4(Bitangent, 0.0f)).xyz); @@ -83,10 +82,17 @@ void main() // Albedo gAlbedo = vec4(m_AlbedoColor, 1.0); if (u_HasAlbedo == 1) - gAlbedo.rgb = texture(m_Albedo, UV).rgb; + { + vec4 albedoSample = texture(m_Albedo, UV); + gAlbedo.rgb = albedoSample.rgb * m_AlbedoColor.rgb; + gAlbedo.a = albedoSample.a; + + if (albedoSample.a < 0.1f) + { + discard; + } + } - gAlbedo.rgb = texture(m_Albedo, UV).rgb * m_AlbedoColor.rgb; - // Material float finalMetalness = u_MetalnessValue; if (u_HasMetalness == 1)