43 MIXED_LOGARITHMIC_UNIFORM_SPLIT
56 TEXTURE_2D_ARRAY_STORAGE
75 PCF_POISSON_DISC_32_TAPS
98 void setName(
const std::string& name);
101 const std::string&
name()
const {
return myName; }
104 void setDirty(
bool dirty);
107 bool dirty()
const {
return myDirty; }
110 void setEntitiesCastsShadows(
bool castShadows);
116 void setPropsCastsShadows(
bool castShadows);
122 void setTerrainCastsShadows(
bool castShadows);
128 void setCloudsCastsShadows(
bool castShadows);
134 void setVisualizeShadows(
bool visualizeShadows);
140 void setNumberOfSplits(
unsigned int numSplits);
147 void setUseCachedFarCascade(
bool useCachedFarCascade);
159 void setUseFrontFaceCulling(
bool useFrontFaceCulling);
165 void setUsePolygonOffset(
bool usePolygonOffset);
171 void setPolygonOffset(
unsigned int splitIndex,
float factor,
float units);
174 float polygonOffsetFactor(
unsigned int splitIndex)
const;
177 float polygonOffsetUnits(
unsigned int splitIndex)
const;
180 void setSpotLightShadowMapSize(
unsigned int size);
186 void setGlobalLightShadowMapSize(
unsigned int size);
192 void setUseMaximumViewDistance(
bool useMaximumViewDistance);
198 void setMaximumViewDistance(
double viewDistance);
205 void setShadowAmbientFactor(
float shadowAmbientFactor);
211 void setShadowStabilizationScheme(ShadowStabilizationScheme shadowStabilizationScheme);
217 void setSplitDistanceComputeScheme(SplitDistanceComputeScheme splitDistanceComputeScheme);
223 void setMixedSplitInterpolationValue(
double interp);
229 void setSplitSelectionScheme(SplitSelectionScheme splitSelectionScheme);
235 void setDataStorageScheme(DataStorageScheme dataStorageScheme);
241 void setPreFilteringScheme(PreFilteringScheme preFilteringScheme);
247 void setFilteringScheme(FilteringScheme filteringScheme);
253 void setPoissonDiskSamplingScheme(PoissonDiskSamplingScheme poissonDiskSamplingScheme);
259 void setUseViewportMulticast(
bool useViewportMulticast);
265 void setNumPersistentPassesPerCascade(
unsigned int numPasses);
271 void setNumAdditionalPassesPerCascade(
unsigned int numPasses);
277 void setPcfFilterWidth(
unsigned int pcfFilterWidth);
283 void setBlendCascadesBoundaries(
bool blendCascadesBoundaries);
289 void setUseSDSM(
bool useSDSM);
295 void setSDSMReadBackLatency(
unsigned int sdsmReadBackLatency);
301 void setUseCameraDepthBufferForSDSM(
bool useCameraDepthBufferForSDSM);
316 void setSplitNearDistanceMinimumBias(
double bias);
319 double splitNearDistanceMinimumBias()
const;
322 void setSplitNearDistanceMaximumBias(
double bias);
325 double splitNearDistanceMaximumBias()
const;
328 void setSplitFarDistanceBias(
double bias);
331 double splitFarDistanceBias()
const;
333 void setEVSMPositiveExponent(
double evsmPositiveExponent);
339 void setEVSMNegativeExponent(
double evsmNegativeExponent);
345 void setVSMMininumVariance(
double vsmMininumVariance);
348 double vsmMininumVariance()
const;
351 void setESMDarkeningFactor(
double esmDarkeningFactor);
354 double esmDarkeningFactor()
const;
357 void setAntiFlickerQuantizationFactor(
float antiFlickerQuantizationFactor);
360 float antiFlickerQuantizationFactor()
const;
364 friend class boost::serialization::access;
366 template <
typename Archive>
367 void serialize(Archive& ar,
unsigned int version)
369 ar & BOOST_SERIALIZATION_NVP(myName);
370 ar & BOOST_SERIALIZATION_NVP(myNumSplits);
371 ar & BOOST_SERIALIZATION_NVP(myEntitiesCastsShadows);
372 ar & BOOST_SERIALIZATION_NVP(myPropsCastsShadows);
373 ar & BOOST_SERIALIZATION_NVP(myTerrainCastsShadows);
374 ar & BOOST_SERIALIZATION_NVP(myVisualizeShadows);
375 ar & BOOST_SERIALIZATION_NVP(myPolygonOffsetFactor);
376 ar & BOOST_SERIALIZATION_NVP(myPolygonOffsetUnits);
377 ar & BOOST_SERIALIZATION_NVP(myUsePolygonOffset);
378 ar & BOOST_SERIALIZATION_NVP(mySpotLightShadowMapSize);
379 ar & BOOST_SERIALIZATION_NVP(myGlobalLightShadowMapSize);
380 ar & BOOST_SERIALIZATION_NVP(myMaximumViewDistance);
381 ar & BOOST_SERIALIZATION_NVP(myUseMaximumViewDistance);
382 ar & BOOST_SERIALIZATION_NVP(myUseFrontFaceCulling);
383 ar & BOOST_SERIALIZATION_NVP(mySplitNearDistanceMinimumBias);
384 ar & BOOST_SERIALIZATION_NVP(mySplitNearDistanceMaximumBias);
385 ar & BOOST_SERIALIZATION_NVP(mySplitFarDistanceBias);
386 ar & BOOST_SERIALIZATION_NVP(myShadowAmbientFactor);
387 ar & BOOST_SERIALIZATION_NVP(myShadowStabilizationScheme);
388 ar & BOOST_SERIALIZATION_NVP(myAntiFlickerQuantizationFactor);
389 ar & BOOST_SERIALIZATION_NVP(mySplitDistanceComputeScheme);
390 ar & BOOST_SERIALIZATION_NVP(myMixedSplitInterp);
391 ar & BOOST_SERIALIZATION_NVP(mySplitSelectionScheme);
392 ar & BOOST_SERIALIZATION_NVP(myDataStorageScheme);
393 ar & BOOST_SERIALIZATION_NVP(myPreFilteringScheme);
394 ar & BOOST_SERIALIZATION_NVP(myFilteringScheme);
395 ar & BOOST_SERIALIZATION_NVP(myPoissonDiskSamplingScheme);
396 ar & BOOST_SERIALIZATION_NVP(myNumAdditionalPassesPerCascade);
397 ar & BOOST_SERIALIZATION_NVP(myPcfFilterWidth);
398 ar & BOOST_SERIALIZATION_NVP(myBlendCascadesBoundaries);
399 ar & BOOST_SERIALIZATION_NVP(myUseSDSM);
400 ar & BOOST_SERIALIZATION_NVP(mySDSMReadBackLatency);
401 ar & BOOST_SERIALIZATION_NVP(myUseCameraDepthBufferForSDSM);
402 ar & BOOST_SERIALIZATION_NVP(myEVSMPositiveExponent);
403 ar & BOOST_SERIALIZATION_NVP(myEVSMNegativeExponent);
404 ar & BOOST_SERIALIZATION_NVP(myVSMMininumVariance);
405 ar & BOOST_SERIALIZATION_NVP(myESMDarkeningFactor);
406 ar & BOOST_SERIALIZATION_NVP(myDirty);
407 ar & BOOST_SERIALIZATION_NVP(myNumPersistentPassesPerCascade);
411 ar & BOOST_SERIALIZATION_NVP(myCloudsCastsShadows);
416 ar & BOOST_SERIALIZATION_NVP(myUseCachedFarCascade);
421 ar & BOOST_SERIALIZATION_NVP(myUseViewportMulticast);
426 ar & BOOST_SERIALIZATION_NVP(myAdjustFarAndFlagsBasedOnHAT);
427 ar & BOOST_SERIALIZATION_NVP(myFarCascadeUpdateFrequency);