From bcb2ca6eeaef34b0d6198f56d2f3d29f4715a86d Mon Sep 17 00:00:00 2001 From: Adrien GIVRY Date: Tue, 10 Jun 2025 12:03:05 -0400 Subject: [PATCH] Added support for emissive map, color, and intensity --- Resources/Engine/Shaders/Standard.ovfx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Resources/Engine/Shaders/Standard.ovfx b/Resources/Engine/Shaders/Standard.ovfx index 2bfac708..ef6cfa33 100644 --- a/Resources/Engine/Shaders/Standard.ovfx +++ b/Resources/Engine/Shaders/Standard.ovfx @@ -77,6 +77,10 @@ uniform vec4 u_Albedo = vec4(1.0); uniform sampler2D u_AmbientOcclusionMap; uniform sampler2D u_MaskMap; +uniform sampler2D u_EmissiveMap; +uniform vec3 u_EmissiveColor = vec3(1.0, 1.0, 1.0); +uniform float u_EmissiveIntensity = 0.0; + #if defined(SPECULAR_WORKFLOW) uniform sampler2D u_SpecularMap; uniform float u_Specular = 1.0; @@ -205,6 +209,9 @@ void main() pbr = mix(pbr, pbr / (pbr + vec3(1.0)), u_BuiltInToneMapping); pbr = mix(pbr, pow(pbr, vec3(1.0 / 2.2)), u_BuiltInGammaCorrection); + const vec3 emissive = texture(u_EmissiveMap, texCoords).rgb * u_EmissiveColor * u_EmissiveIntensity; + pbr += emissive; + FRAGMENT_COLOR = vec4(pbr, albedo.a); #endif }