2
0
Эх сурвалжийг харах

slim ambient down to vec3, default to premul for translucency

AzaezelX 3 жил өмнө
parent
commit
de6ee93159

+ 1 - 1
Engine/source/materials/materialDefinition.cpp

@@ -536,7 +536,7 @@ bool Material::onAdd()
    if (mTranslucentBlendOp >= NumBlendTypes || mTranslucentBlendOp < 0)
    {
       Con::errorf("Invalid blend op in material: %s", getName());
-      mTranslucentBlendOp = LerpAlpha;
+      mTranslucentBlendOp = PreMul;
    }
 
    SimSet* matSet = MATMGR->getMaterialSet();

+ 1 - 1
Engine/source/shaderGen/GLSL/shaderFeatureGLSL.cpp

@@ -3064,7 +3064,7 @@ void ReflectionProbeFeatGLSL::processPix(Vector<ShaderComponent*>& componentList
    Var *ambient = (Var *)LangElement::find("ambient");
    if (!ambient)
    {
-      ambient = new Var("ambient", "vec4");
+      ambient = new Var("ambient", "vec3");
       eyePos->uniform = true;
       eyePos->constSortPos = cspPass;
    }

+ 1 - 1
Engine/source/shaderGen/HLSL/shaderFeatureHLSL.cpp

@@ -3153,7 +3153,7 @@ void ReflectionProbeFeatHLSL::processPix(Vector<ShaderComponent*> &componentList
    Var *ambient = (Var *)LangElement::find("ambient");
    if (!ambient)
    {
-      ambient = new Var("ambient","float4");
+      ambient = new Var("ambient","float3");
       eyePos->uniform = true;
       eyePos->constSortPos = cspPass;
    }

+ 2 - 2
Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/gl/reflectionProbeArrayP.glsl

@@ -12,7 +12,7 @@ uniform sampler2D colorBuffer;
 uniform sampler2D matInfoBuffer;
 uniform sampler2D BRDFTexture;
 
-uniform vec4 ambientColor;
+uniform vec3 ambientColor;
 uniform vec4 rtParams0;
 uniform vec4 vsFarPlane;
 uniform mat4 cameraToWorld;
@@ -203,6 +203,6 @@ void main()
 #if CAPTURING == 1
    OUT_col = vec4(mix(surface.baseColor.rgb,(irradiance + specular* horizon) ,surface.metalness/2),0);
 #else
-   OUT_col = vec4((irradiance + specular* horizon)*ambientColor.rgb , 0);//alpha writes disabled
+   OUT_col = vec4((irradiance + specular* horizon)*ambientColor, 0);//alpha writes disabled
 #endif
 }

+ 2 - 2
Templates/BaseGame/game/core/rendering/shaders/lighting/advanced/reflectionProbeArrayP.hlsl

@@ -8,7 +8,7 @@ TORQUE_UNIFORM_SAMPLER2D(deferredBuffer, 0);
 TORQUE_UNIFORM_SAMPLER2D(colorBuffer, 1);
 TORQUE_UNIFORM_SAMPLER2D(matInfoBuffer, 2);
 TORQUE_UNIFORM_SAMPLER2D(BRDFTexture, 3);
-uniform float4 ambientColor;
+uniform float3 ambientColor;
 uniform float4 rtParams0;
 uniform float4 vsFarPlane;
 uniform float4x4 cameraToWorld;
@@ -190,6 +190,6 @@ float4 main(PFXVertToPix IN) : SV_TARGET
 #if CAPTURING == 1
     return float4(lerp(surface.baseColor.rgb,(irradiance + specular* horizon) ,surface.metalness/2),0);
 #else
-   return float4((irradiance + specular* horizon)*ambientColor.rgb, 0);//alpha writes disabled   
+   return float4((irradiance + specular* horizon)*ambientColor, 0);//alpha writes disabled   
 #endif
 }