Sfoglia il codice sorgente

missed a few conversions

AzaezelX 6 anni fa
parent
commit
4d714091b7

+ 2 - 2
Engine/source/renderInstance/renderProbeMgr.cpp

@@ -786,8 +786,8 @@ void RenderProbeMgr::render( SceneRenderState *state )
    mProbeArrayEffect->setShaderConst("$inProbePosArray", probePositionsData);
    mProbeArrayEffect->setShaderConst("$inRefPosArray", probeRefPositionsData);
    mProbeArrayEffect->setShaderConst("$worldToObjArray", probeWorldToObjData);
-   mProbeArrayEffect->setShaderConst("$bbMinArray", refBoxMinData);
-   mProbeArrayEffect->setShaderConst("$bbMaxArray", refBoxMaxData);
+   mProbeArrayEffect->setShaderConst("$refBoxMinArray", refBoxMinData);
+   mProbeArrayEffect->setShaderConst("$refBoxMaxArray", refBoxMaxData);
    mProbeArrayEffect->setShaderConst("$probeConfigData", probeConfigData);
 
    // Make sure the effect is gonna render.

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

@@ -2927,15 +2927,15 @@ void ReflectionProbeFeatGLSL::processPix(Vector<ShaderComponent*>& componentList
    inRefPosArray->uniform = true;
    inRefPosArray->constSortPos = cspPotentialPrimitive;
 
-   Var * bbMinArray = new Var("inRefBoxMin", "vec4");
-   bbMinArray->arraySize = MAX_FORWARD_PROBES;
-   bbMinArray->uniform = true;
-   bbMinArray->constSortPos = cspPotentialPrimitive;
+   Var * refBoxMinArray = new Var("inRefBoxMin", "vec4");
+   refBoxMinArray->arraySize = MAX_FORWARD_PROBES;
+   refBoxMinArray->uniform = true;
+   refBoxMinArray->constSortPos = cspPotentialPrimitive;
 
-   Var * bbMaxArray = new Var("inRefBoxMax", "vec4");
-   bbMaxArray->arraySize = MAX_FORWARD_PROBES;
-   bbMaxArray->uniform = true;
-   bbMaxArray->constSortPos = cspPotentialPrimitive;
+   Var * refBoxMaxArray = new Var("inRefBoxMax", "vec4");
+   refBoxMaxArray->arraySize = MAX_FORWARD_PROBES;
+   refBoxMaxArray->uniform = true;
+   refBoxMaxArray->constSortPos = cspPotentialPrimitive;
 
    Var * probeConfigData = new Var("probeConfigData", "vec4");
    probeConfigData->arraySize = MAX_FORWARD_PROBES;
@@ -3043,7 +3043,7 @@ void ReflectionProbeFeatGLSL::processPix(Vector<ShaderComponent*>& componentList
    computeForwardProbes += String("@, @, \r\n\t\t");
    computeForwardProbes += String("@,@).rgb; \r\n");
 
-   meta->addStatement(new GenOp(computeForwardProbes.c_str(), albedo, surface, cubeMips, numProbes, worldToObjArray, probeConfigData, inProbePosArray, bbMinArray, bbMaxArray, inRefPosArray,
+   meta->addStatement(new GenOp(computeForwardProbes.c_str(), albedo, surface, cubeMips, numProbes, worldToObjArray, probeConfigData, inProbePosArray, refBoxMinArray, refBoxMaxArray, inRefPosArray,
       hasSkylight, BRDFTexture,
       skylightIrradMap, skylightSpecularMap,
       irradianceCubemapAR, specularCubemapAR));

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

@@ -3002,15 +3002,15 @@ void ReflectionProbeFeatHLSL::processPix(Vector<ShaderComponent*> &componentList
    inRefPosArray->uniform = true;
    inRefPosArray->constSortPos = cspPotentialPrimitive;
 
-   Var *bbMinArray = new Var("inRefBoxMin", "float4");
-   bbMinArray->arraySize = MAX_FORWARD_PROBES;
-   bbMinArray->uniform = true;
-   bbMinArray->constSortPos = cspPotentialPrimitive;
+   Var * refBoxMinArray = new Var("inRefBoxMin", "float4");
+   refBoxMinArray->arraySize = MAX_FORWARD_PROBES;
+   refBoxMinArray->uniform = true;
+   refBoxMinArray->constSortPos = cspPotentialPrimitive;
 
-   Var *bbMaxArray = new Var("inRefBoxMax", "float4");
-   bbMaxArray->arraySize = MAX_FORWARD_PROBES;
-   bbMaxArray->uniform = true;
-   bbMaxArray->constSortPos = cspPotentialPrimitive;
+   Var * refBoxMaxArray = new Var("inRefBoxMax", "float4");
+   refBoxMaxArray->arraySize = MAX_FORWARD_PROBES;
+   refBoxMaxArray->uniform = true;
+   refBoxMaxArray->constSortPos = cspPotentialPrimitive;
 
    Var *probeConfigData = new Var("probeConfigData", "float4");
    probeConfigData->arraySize = MAX_FORWARD_PROBES;
@@ -3112,7 +3112,7 @@ void ReflectionProbeFeatHLSL::processPix(Vector<ShaderComponent*> &componentList
    computeForwardProbes += String::String("@,TORQUE_SAMPLER2D_MAKEARG(@),\r\n\t\t"); 
    computeForwardProbes += String::String("TORQUE_SAMPLERCUBEARRAY_MAKEARG(@),TORQUE_SAMPLERCUBEARRAY_MAKEARG(@)).rgb; \r\n");
       
-   meta->addStatement(new GenOp(computeForwardProbes.c_str(), diffuseColor, surface, cubeMips, numProbes, worldToObjArray, probeConfigData, inProbePosArray, bbMinArray, bbMaxArray, inRefPosArray,
+   meta->addStatement(new GenOp(computeForwardProbes.c_str(), diffuseColor, surface, cubeMips, numProbes, worldToObjArray, probeConfigData, inProbePosArray, refBoxMinArray, refBoxMaxArray, inRefPosArray,
       skylightCubemapIdx, BRDFTexture,
       irradianceCubemapAR, specularCubemapAR));
 

+ 1 - 3
Templates/BaseGame/game/core/rendering/shaders/lighting.hlsl

@@ -444,8 +444,6 @@ float4 computeForwardProbes(Surface surface,
          if (contribution[i] > 0.0)
             probehits++;
       }
-      else
-         continue;
 
       contribution[i] = max(contribution[i], 0);
 
@@ -524,7 +522,7 @@ float4 computeForwardProbes(Surface surface,
       if (contrib != 0)
       {
          int cubemapIdx = probeConfigData[i].a;
-         float3 dir = boxProject(surface.P, surface.R, worldToObjArray[i], refBoxArray[i].xyz, refBoxMaxArray[i].xyz, inRefPosArray[i].xyz);
+         float3 dir = boxProject(surface.P, surface.R, worldToObjArray[i], refBoxMinArray[i].xyz, refBoxMaxArray[i].xyz, inRefPosArray[i].xyz);
 
          irradiance += TORQUE_TEXCUBEARRAYLOD(irradianceCubemapAR, dir, cubemapIdx, 0).xyz * contrib;
          specular += TORQUE_TEXCUBEARRAYLOD(specularCubemapAR, dir, cubemapIdx, lod).xyz * contrib;

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

@@ -25,7 +25,7 @@ uniform float4    inProbePosArray[MAX_PROBES];
 uniform float4    inRefPosArray[MAX_PROBES];
 uniform float4x4  worldToObjArray[MAX_PROBES];
 uniform float4    refBoxMinArray[MAX_PROBES];
-uniform float4    refBoxArray[MAX_PROBES];
+uniform float4    refBoxMaxArray[MAX_PROBES];
 uniform float4    probeConfigData[MAX_PROBES];   //r,g,b/mode,radius,atten
 
 #if DEBUGVIZ_CONTRIB
@@ -80,8 +80,6 @@ float4 main(PFXVertToPix IN) : SV_TARGET
             if (contribution[i]>0.0)
                probehits++;
          }
-         else
-            continue;
 
          contribution[i] = max(contribution[i],0);