adds wetness

cliffsnotes:
   $Core::WetnessTexture = "core/rendering/images/wetMap.png"; //for the influence degree map
probes/skylight have a new canDamp boolean, set to off for probes, on for skylight by default.
:levelinfo has a dampness multiplier (0-1)
kicked up numTextures from 8 to 16 for shaderdata and postfx since that hit the 8 texture-in prior limit, and we've already adopted apis that can handle the higher count
This commit is contained in:
AzaezelX 2022-11-21 21:12:23 -06:00
parent e16351605b
commit d23ee397e6
31 changed files with 352 additions and 100 deletions

View file

@ -98,8 +98,9 @@ struct ProbeShaderConstants
GFXShaderConstHandle *mProbeCountSC;
GFXShaderConstHandle *mBRDFTextureMap;
GFXShaderConstHandle* mWetnessTextureMap;
GFXShaderConstHandle *mSkylightCubemapIdxSC;
GFXShaderConstHandle* mSkylightDampSC;
GFXShaderConstHandle* mMaxProbeDrawDistanceSC;
@ -127,9 +128,8 @@ struct ProbeDataSet
Vector<Point4F> probeConfigArray;
Vector<MatrixF> probeWorldToObjArray;
S32 skyLightIdx;
bool skyLightDamp;
U32 effectiveProbeCount;
U32 maxProbeCount;
@ -141,10 +141,10 @@ struct ProbeDataSet
probeConfigArray.setSize(0);
probeWorldToObjArray.setSize(0);
skyLightIdx = -1;
effectiveProbeCount = 0;
maxProbeCount = 0;
skyLightDamp = true;
}
ProbeDataSet(U32 _maxProbeCount)
@ -212,7 +212,7 @@ private:
/// If we have a skylight, what's the array pair index for it?
/// </summary>
S32 mSkylightCubemapIdx;
bool mSkylightDamp;
/// <summary>
/// The 'effective' probe count. This tracks the number of probes that are actually going to be rendered
/// </summary>
@ -279,7 +279,8 @@ private:
/// The BRDF texture used in PBR math calculations
/// </summary>
GFXTexHandle mBRDFTexture;
GFXTexHandle mWetnessTexture;
/// <summary>
/// Processed best probe selection list of the current frame when rendering in deferred mode.
/// </summary>