VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtShadowSettingsRecord.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
15 
16 #include <string>
17 #include <map>
18 #include <vector>
19 
20 
21 
22 namespace makArchives
23 {
24 
30  {
31  public:
33  {
37  };
38 
40  {
43  MIXED_LOGARITHMIC_UNIFORM_SPLIT
44  };
45 
47  {
49  LIGHT_SPACE
50  };
51 
53  {
56  TEXTURE_2D_ARRAY_STORAGE
57  };
58 
60  {
64  VARIANCE_SHADOW_MAPS
65  };
66 
67 
69  {
75  PCF_POISSON_DISC_32_TAPS
76  };
77 
79  {
82  ROTATED_SAMPLING
83  };
84 
87 
90 
93 
95  DtShadowSettingsRecord& operator=(const DtShadowSettingsRecord& orig);
96 
98  void setName(const std::string& name);
99 
101  const std::string& name() const { return myName; }
102 
104  void setDirty(bool dirty);
105 
107  bool dirty() const { return myDirty; }
108 
110  void setShadowsEnabled(bool shadowsEnabled);
111 
113  bool shadowsEnabled() const { return myShadowsEnabled; }
114 
116  void setShadowsEnabledOnOcean(bool shadowsEnabled);
117 
119  bool shadowsEnabledOnOcean() const;
120 
122  void setEntitiesCastsShadows(bool castShadows);
123 
125  bool entitiesCastsShadows() const { return myEntitiesCastsShadows; }
126 
128  void setPropsCastsShadows(bool castShadows);
129 
131  bool propsCastsShadows() const { return myPropsCastsShadows; }
132 
134  void setTerrainCastsShadows(bool castShadows);
135 
137  bool terrainCastsShadows() const { return myTerrainCastsShadows; }
138 
140  void setMoonCastsShadows(bool castShadows);
141 
143  bool moonCastsShadows() const { return myMoonCastsShadows; }
144 
146  void setCloudsCastsShadows(bool castShadows);
147 
149  bool cloudsCastsShadows() const { return myCloudsCastsShadows; }
150 
152  void setVisualizeShadows(bool visualizeShadows);
153 
155  bool visualizeShadows() const { return myVisualizeShadows; }
156 
158  void setNumberOfSplits(unsigned int numSplits);
159 
161  unsigned int numberOfSplits() const { return myNumSplits; }
162 
165  void setUseCachedFarCascade(bool useCachedFarCascade);
166 
168  bool useCachedFarCascade() const { return myUseCachedFarCascade; }
169 
171  void setFarCascadeUpdateFrequency(float value) { myFarCascadeUpdateFrequency = value; }
172 
174  float farCascadeUpdateFrequency() const {return myFarCascadeUpdateFrequency; }
175 
177  void setUseFrontFaceCulling(bool useFrontFaceCulling);
178 
180  bool useFrontFaceCulling() const { return myUseFrontFaceCulling; }
181 
183  void setUsePolygonOffset(bool usePolygonOffset);
184 
186  bool usePolygonOffset() const { return myUsePolygonOffset; }
187 
189  void setPolygonOffset(unsigned int splitIndex, float factor, float units);
190 
192  float polygonOffsetFactor(unsigned int splitIndex) const;
193 
195  float polygonOffsetUnits(unsigned int splitIndex) const;
196 
198  void setSpotLightShadowMapSize(unsigned int size);
199 
201  unsigned int spotLightShadowMapSize() const { return mySpotLightShadowMapSize; }
202 
204  void setGlobalLightShadowMapSize(unsigned int size);
205 
207  unsigned int globalLightShadowMapSize() const { return myGlobalLightShadowMapSize; }
208 
210  void setUseMaximumViewDistance(bool useMaximumViewDistance);
211 
213  bool useMaximumViewDistance() const { return myUseMaximumViewDistance; }
214 
216  void setMaximumViewDistance(double viewDistance);
217 
219  double maximumViewDistance() const { return myMaximumViewDistance; }
220 
221 
223  void setShadowAmbientFactor(float shadowAmbientFactor);
224 
226  float shadowAmbientFactor() const { return myShadowAmbientFactor; }
227 
229  void setShadowStabilizationScheme(ShadowStabilizationScheme shadowStabilizationScheme);
230 
232  ShadowStabilizationScheme shadowStabilizationScheme() const { return myShadowStabilizationScheme; }
233 
235  void setSplitDistanceComputeScheme(SplitDistanceComputeScheme splitDistanceComputeScheme);
236 
238  SplitDistanceComputeScheme splitDistanceComputeScheme() const { return mySplitDistanceComputeScheme; }
239 
241  void setMixedSplitInterpolationValue(double interp);
242 
244  double mixedSplitInterpolationValue() const { return myMixedSplitInterp; }
245 
247  void setSplitSelectionScheme(SplitSelectionScheme splitSelectionScheme);
248 
250  SplitSelectionScheme splitSelectionScheme() const { return mySplitSelectionScheme; }
251 
253  void setDataStorageScheme(DataStorageScheme dataStorageScheme);
254 
256  DataStorageScheme dataStorageScheme() const { return myDataStorageScheme; }
257 
259  void setPreFilteringScheme(PreFilteringScheme preFilteringScheme);
260 
262  PreFilteringScheme preFilteringScheme() const { return myPreFilteringScheme; }
263 
265  void setFilteringScheme(FilteringScheme filteringScheme);
266 
268  FilteringScheme filteringScheme() const { return myFilteringScheme; }
269 
271  void setPoissonDiskSamplingScheme(PoissonDiskSamplingScheme poissonDiskSamplingScheme);
272 
274  PoissonDiskSamplingScheme poissonDiskSamplingScheme() const { return myPoissonDiskSamplingScheme; }
275 
277  void setUseViewportMulticast(bool useViewportMulticast);
278 
280  bool useViewportMulticast() const { return myUseViewportMulticast; }
281 
283  void setNumPersistentPassesPerCascade(unsigned int numPasses);
284 
286  unsigned int numPersistentPassesPerCascade() const { return myNumPersistentPassesPerCascade; }
287 
289  void setNumAdditionalPassesPerCascade(unsigned int numPasses);
290 
292  unsigned int numAdditionalPassesPerCascade() const { return myNumAdditionalPassesPerCascade; }
293 
295  void setPcfFilterWidth(unsigned int pcfFilterWidth);
296 
298  unsigned int pcfFilterWidth() const { return myPcfFilterWidth; }
299 
301  void setBlendCascadesBoundaries(bool blendCascadesBoundaries);
302 
304  bool blendCascadesBoundaries() const { return myBlendCascadesBoundaries; }
305 
307  void setUseSDSM(bool useSDSM);
308 
310  bool useSDSM() const { return myUseSDSM; }
311 
313  void setSDSMReadBackLatency(unsigned int sdsmReadBackLatency);
314 
316  unsigned int sdsmReadBackLatency() const { return mySDSMReadBackLatency; }
317 
319  void setUseCameraDepthBufferForSDSM(bool useCameraDepthBufferForSDSM);
320 
322  bool useCameraDepthBufferForSDSM() const { return myUseCameraDepthBufferForSDSM; }
323 
325  void setAdjustFarAndFlagsBasedOnHAT(bool enabled) { myAdjustFarAndFlagsBasedOnHAT = enabled; }
326 
328  bool adjustFarAndFlagsBasedOnHAT() const { return myAdjustFarAndFlagsBasedOnHAT; }
329 
330 
332 
334  void setSplitNearDistanceMinimumBias(double bias);
335 
337  double splitNearDistanceMinimumBias() const;
338 
340  void setSplitNearDistanceMaximumBias(double bias);
341 
343  double splitNearDistanceMaximumBias() const;
344 
346  void setSplitFarDistanceBias(double bias);
347 
349  double splitFarDistanceBias() const;
351  void setEVSMPositiveExponent(double evsmPositiveExponent);
352 
354  double evsmPositiveExponent() const { return myEVSMPositiveExponent; }
355 
357  void setEVSMNegativeExponent(double evsmNegativeExponent);
358 
360  double evsmNegativeExponent() const { return myEVSMNegativeExponent; }
361 
363  void setVSMMininumVariance(double vsmMininumVariance);
364 
366  double vsmMininumVariance() const;
367 
369  void setESMDarkeningFactor(double esmDarkeningFactor);
370 
372  double esmDarkeningFactor() const;
373 
375  void setAntiFlickerQuantizationFactor(float antiFlickerQuantizationFactor);
376 
378  float antiFlickerQuantizationFactor() const;
379 
380 
381  protected:
382  friend class boost::serialization::access;
383 
384  template <typename Archive>
385  void serialize(Archive& ar, unsigned int version)
386  {
387  ar & BOOST_SERIALIZATION_NVP(myName);
388  ar & BOOST_SERIALIZATION_NVP(myNumSplits);
389  if (version >= 7)
390  {
391  ar & BOOST_SERIALIZATION_NVP(myShadowsEnabled);
392  }
393  ar & BOOST_SERIALIZATION_NVP(myEntitiesCastsShadows);
394  ar & BOOST_SERIALIZATION_NVP(myPropsCastsShadows);
395  ar & BOOST_SERIALIZATION_NVP(myTerrainCastsShadows);
396  ar & BOOST_SERIALIZATION_NVP(myVisualizeShadows);
397  ar & BOOST_SERIALIZATION_NVP(myPolygonOffsetFactor);
398  ar & BOOST_SERIALIZATION_NVP(myPolygonOffsetUnits);
399  ar & BOOST_SERIALIZATION_NVP(myUsePolygonOffset);
400  ar & BOOST_SERIALIZATION_NVP(mySpotLightShadowMapSize);
401  ar & BOOST_SERIALIZATION_NVP(myGlobalLightShadowMapSize);
402  ar & BOOST_SERIALIZATION_NVP(myMaximumViewDistance);
403  ar & BOOST_SERIALIZATION_NVP(myUseMaximumViewDistance);
404  ar & BOOST_SERIALIZATION_NVP(myUseFrontFaceCulling);
405  ar & BOOST_SERIALIZATION_NVP(mySplitNearDistanceMinimumBias);
406  ar & BOOST_SERIALIZATION_NVP(mySplitNearDistanceMaximumBias);
407  ar & BOOST_SERIALIZATION_NVP(mySplitFarDistanceBias);
408  ar & BOOST_SERIALIZATION_NVP(myShadowAmbientFactor);
409  ar & BOOST_SERIALIZATION_NVP(myShadowStabilizationScheme);
410  ar & BOOST_SERIALIZATION_NVP(myAntiFlickerQuantizationFactor);
411  ar & BOOST_SERIALIZATION_NVP(mySplitDistanceComputeScheme);
412  ar & BOOST_SERIALIZATION_NVP(myMixedSplitInterp);
413  ar & BOOST_SERIALIZATION_NVP(mySplitSelectionScheme);
414  ar & BOOST_SERIALIZATION_NVP(myDataStorageScheme);
415  ar & BOOST_SERIALIZATION_NVP(myPreFilteringScheme);
416  ar & BOOST_SERIALIZATION_NVP(myFilteringScheme);
417  ar & BOOST_SERIALIZATION_NVP(myPoissonDiskSamplingScheme);
418  ar & BOOST_SERIALIZATION_NVP(myNumAdditionalPassesPerCascade);
419  ar & BOOST_SERIALIZATION_NVP(myPcfFilterWidth);
420  ar & BOOST_SERIALIZATION_NVP(myBlendCascadesBoundaries);
421  ar & BOOST_SERIALIZATION_NVP(myUseSDSM);
422  ar & BOOST_SERIALIZATION_NVP(mySDSMReadBackLatency);
423  ar & BOOST_SERIALIZATION_NVP(myUseCameraDepthBufferForSDSM);
424  ar & BOOST_SERIALIZATION_NVP(myEVSMPositiveExponent);
425  ar & BOOST_SERIALIZATION_NVP(myEVSMNegativeExponent);
426  ar & BOOST_SERIALIZATION_NVP(myVSMMininumVariance);
427  ar & BOOST_SERIALIZATION_NVP(myESMDarkeningFactor);
428  ar & BOOST_SERIALIZATION_NVP(myDirty);
429  ar & BOOST_SERIALIZATION_NVP(myNumPersistentPassesPerCascade);
430 
431  if (version >= 2)
432  {
433  ar & BOOST_SERIALIZATION_NVP(myCloudsCastsShadows);
434  }
435 
436  if (version >= 3)
437  {
438  ar & BOOST_SERIALIZATION_NVP(myUseCachedFarCascade);
439  }
440 
441  if (version >= 4)
442  {
443  ar & BOOST_SERIALIZATION_NVP(myUseViewportMulticast);
444  }
445 
446  if (version >= 5)
447  {
448  ar & BOOST_SERIALIZATION_NVP(myAdjustFarAndFlagsBasedOnHAT);
449  ar & BOOST_SERIALIZATION_NVP(myFarCascadeUpdateFrequency);
450  }
451 
452  if (version >= 6)
453  {
454  ar & BOOST_SERIALIZATION_NVP(myMoonCastsShadows);
455  }
456 
457  if (version >= 8)
458  {
459  ar& BOOST_SERIALIZATION_NVP(myShadowsEnabledOnOcean);
460  }
461  }
462 
463 
464  protected:
465 
466  std::string myName;
467  bool myDirty;
468 
470 
472 
474 
476 
478 
480 
482 
483  unsigned int myNumSplits;
484 
485  std::vector<float> myPolygonOffsetFactor;
486 
487  std::vector<float> myPolygonOffsetUnits;
488 
490 
492 
494 
496 
498 
500 
502 
504 
519  unsigned int myPcfFilterWidth;
521  bool myUseSDSM;
522  unsigned int mySDSMReadBackLatency;
524 
525  // deprecated
527 
529 
531 
537 
538 
539  };
540 }
541 
SplitDistanceComputeScheme
Definition: DtShadowSettingsRecord.h:39
double mySplitNearDistanceMinimumBias
Definition: DtShadowSettingsRecord.h:505
ShadowStabilizationScheme myShadowStabilizationScheme
Definition: DtShadowSettingsRecord.h:509
unsigned int spotLightShadowMapSize() const
Gets spot light texture atlas size.
Definition: DtShadowSettingsRecord.h:201
bool myCloudsCastsShadows
Definition: DtShadowSettingsRecord.h:481
double mySplitNearDistanceMaximumBias
Definition: DtShadowSettingsRecord.h:506
DataStorageScheme
Definition: DtShadowSettingsRecord.h:52
bool adjustFarAndFlagsBasedOnHAT() const
Gets if near cascades automatically change size and flags in the air.
Definition: DtShadowSettingsRecord.h:328
bool entitiesCastsShadows() const
Gets entities casts shadow flag.
Definition: DtShadowSettingsRecord.h:125
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
FilteringScheme myFilteringScheme
Definition: DtShadowSettingsRecord.h:515
double myEVSMNegativeExponent
Definition: DtShadowSettingsRecord.h:528
Definition: DtShadowSettingsRecord.h:35
bool useViewportMulticast() const
Gets use viewport multicast.
Definition: DtShadowSettingsRecord.h:280
float farCascadeUpdateFrequency() const
Gets far cascade update frequency.
Definition: DtShadowSettingsRecord.h:174
DtShadowSettingsRecord is the serializable record used to read and write a Shadow Setting&#39;s Configura...
Definition: DtShadowSettingsRecord.h:29
bool myUseFrontFaceCulling
Definition: DtShadowSettingsRecord.h:495
FilteringScheme
Definition: DtShadowSettingsRecord.h:68
bool myUseViewportMulticast
Definition: DtShadowSettingsRecord.h:501
double evsmNegativeExponent() const
Gets exponential variance shadow maps(EVSM) negative exponent.
Definition: DtShadowSettingsRecord.h:360
bool useMaximumViewDistance() const
Gets use maximum view distance.
Definition: DtShadowSettingsRecord.h:213
Definition: DtShadowSettingsRecord.h:42
voidpf void uLong size
Definition: ioapi.h:39
bool terrainCastsShadows() const
Gets terrain casts shadow flag.
Definition: DtShadowSettingsRecord.h:137
bool myAdjustFarAndFlagsBasedOnHAT
Definition: DtShadowSettingsRecord.h:503
unsigned int myNumSplits
Definition: DtShadowSettingsRecord.h:483
float myFarCascadeUpdateFrequency
Definition: DtShadowSettingsRecord.h:499
void setFarCascadeUpdateFrequency(float value)
Sets far cascade update frequency.
Definition: DtShadowSettingsRecord.h:171
Contains DLL export macros.
Definition: DtShadowSettingsRecord.h:61
bool useSDSM() const
Gets Sample Distribution Shadow Maps(SDSM) enabled or disabled state.
Definition: DtShadowSettingsRecord.h:310
bool myDirty
Definition: DtShadowSettingsRecord.h:467
SplitDistanceComputeScheme splitDistanceComputeScheme() const
Gets split distance compute scheme.
Definition: DtShadowSettingsRecord.h:238
float myShadowAmbientFactor
Definition: DtShadowSettingsRecord.h:508
std::vector< float > myPolygonOffsetUnits
Definition: DtShadowSettingsRecord.h:487
Definition: DtShadowSettingsRecord.h:54
PoissonDiskSamplingScheme poissonDiskSamplingScheme() const
Gets poisson disk sampling scheme.
Definition: DtShadowSettingsRecord.h:274
bool myEntitiesCastsShadows
Definition: DtShadowSettingsRecord.h:473
double maximumViewDistance() const
Get maximum far distance.
Definition: DtShadowSettingsRecord.h:219
unsigned int numAdditionalPassesPerCascade() const
Gets additional number of passes per cascade.
Definition: DtShadowSettingsRecord.h:292
bool usePolygonOffset() const
Gets use polygon offset.
Definition: DtShadowSettingsRecord.h:186
bool blendCascadesBoundaries() const
Gets blend between cascade boundaries.
Definition: DtShadowSettingsRecord.h:304
Definition: DtShadowSettingsRecord.h:70
SplitSelectionScheme
Definition: DtShadowSettingsRecord.h:46
bool propsCastsShadows() const
Gets props casts shadow flag.
Definition: DtShadowSettingsRecord.h:131
unsigned int mySpotLightShadowMapSize
Definition: DtShadowSettingsRecord.h:535
double evsmPositiveExponent() const
Gets exponential variance shadow maps(EVSM) positive exponent.
Definition: DtShadowSettingsRecord.h:354
unsigned int myPcfFilterWidth
Definition: DtShadowSettingsRecord.h:519
float shadowAmbientFactor() const
Gets shadow factor for modulating the scene.
Definition: DtShadowSettingsRecord.h:226
bool shadowsEnabled() const
Gets shadows enabled flag.
Definition: DtShadowSettingsRecord.h:113
double myMaximumViewDistance
Definition: DtShadowSettingsRecord.h:491
DataStorageScheme myDataStorageScheme
Definition: DtShadowSettingsRecord.h:513
unsigned int numPersistentPassesPerCascade() const
Gets number of persistent passes per cascade.
Definition: DtShadowSettingsRecord.h:286
double myVSMMininumVariance
Definition: DtShadowSettingsRecord.h:530
void setAdjustFarAndFlagsBasedOnHAT(bool enabled)
Sets to make the near cascades automatically change size and flags in the air.
Definition: DtShadowSettingsRecord.h:325
bool myUseMaximumViewDistance
Definition: DtShadowSettingsRecord.h:493
bool myUseCameraDepthBufferForSDSM
Definition: DtShadowSettingsRecord.h:523
unsigned int pcfFilterWidth() const
Gets PCF filter width.
Definition: DtShadowSettingsRecord.h:298
ShadowStabilizationScheme
Definition: DtShadowSettingsRecord.h:32
bool myVisualizeShadows
Definition: DtShadowSettingsRecord.h:533
void serialize(Archive &ar, unsigned int version)
Definition: DtShadowSettingsRecord.h:385
PreFilteringScheme preFilteringScheme() const
Gets pre-filtering scheme.
Definition: DtShadowSettingsRecord.h:262
bool myUseSDSM
Definition: DtShadowSettingsRecord.h:521
SplitDistanceComputeScheme mySplitDistanceComputeScheme
Definition: DtShadowSettingsRecord.h:510
bool useCameraDepthBufferForSDSM() const
Gets the setting for the usage of the most recent camera depth buffer for Sample Distribution Shadow ...
Definition: DtShadowSettingsRecord.h:322
double myESMDarkeningFactor
Definition: DtShadowSettingsRecord.h:532
double myMixedSplitInterp
Definition: DtShadowSettingsRecord.h:511
SplitSelectionScheme mySplitSelectionScheme
Definition: DtShadowSettingsRecord.h:512
bool myTerrainCastsShadows
Definition: DtShadowSettingsRecord.h:477
PreFilteringScheme myPreFilteringScheme
Definition: DtShadowSettingsRecord.h:514
Definition: DtShadowSettingsRecord.h:48
unsigned int myNumPersistentPassesPerCascade
Definition: DtShadowSettingsRecord.h:517
PoissonDiskSamplingScheme
Definition: DtShadowSettingsRecord.h:78
Definition: DtShadowSettingsRecord.h:41
float myAntiFlickerQuantizationFactor
Definition: DtShadowSettingsRecord.h:534
unsigned int globalLightShadowMapSize() const
Gets global light texture size for cascaded shadow mapping.
Definition: DtShadowSettingsRecord.h:207
FilteringScheme filteringScheme() const
Gets filtering scheme.
Definition: DtShadowSettingsRecord.h:268
bool myBlendCascadesBoundaries
Definition: DtShadowSettingsRecord.h:520
double mySplitFarDistanceBias
Definition: DtShadowSettingsRecord.h:507
Definition: DtShadowSettingsRecord.h:34
PoissonDiskSamplingScheme myPoissonDiskSamplingScheme
Definition: DtShadowSettingsRecord.h:516
bool myUseCachedFarCascade
Definition: DtShadowSettingsRecord.h:497
Definition: DtShadowSettingsRecord.h:81
unsigned int myNumAdditionalPassesPerCascade
Definition: DtShadowSettingsRecord.h:518
bool myShadowsEnabledOnOcean
Definition: DtShadowSettingsRecord.h:471
DataStorageScheme dataStorageScheme() const
Gets data storage scheme.
Definition: DtShadowSettingsRecord.h:256
bool visualizeShadows() const
Gets shadow visualization mode.
Definition: DtShadowSettingsRecord.h:155
bool myMoonCastsShadows
Definition: DtShadowSettingsRecord.h:479
bool useCachedFarCascade() const
Gets use cached far cascade.
Definition: DtShadowSettingsRecord.h:168
SplitSelectionScheme splitSelectionScheme() const
Gets split selection scheme.
Definition: DtShadowSettingsRecord.h:250
unsigned int numberOfSplits() const
Gets shadow visualization mode.
Definition: DtShadowSettingsRecord.h:161
Definition: DtShadowSettingsRecord.h:80
double mixedSplitInterpolationValue() const
Gets mixed logarithmic uniform split interpolation value.
Definition: DtShadowSettingsRecord.h:244
bool myUsePolygonOffset
Definition: DtShadowSettingsRecord.h:536
std::vector< float > myPolygonOffsetFactor
Definition: DtShadowSettingsRecord.h:485
std::string myName
Definition: DtShadowSettingsRecord.h:466
unsigned int sdsmReadBackLatency() const
Gets Sample Distribution Shadow Maps(SDSM) read back latency.
Definition: DtShadowSettingsRecord.h:316
ShadowStabilizationScheme shadowStabilizationScheme() const
Gets shadow stabilization scheme.
Definition: DtShadowSettingsRecord.h:232
bool moonCastsShadows() const
Gets terrain casts shadow flag.
Definition: DtShadowSettingsRecord.h:143
bool dirty() const
Checks if any setting just changed.
Definition: DtShadowSettingsRecord.h:107
bool myPropsCastsShadows
Definition: DtShadowSettingsRecord.h:475
bool myShadowsEnabled
Definition: DtShadowSettingsRecord.h:469
double myEVSMPositiveExponent
Definition: DtShadowSettingsRecord.h:526
#define DT_DLL_MAKARCHIVES
Definition: makArchives.h:31
bool cloudsCastsShadows() const
Gets cloud casts shadow flag.
Definition: DtShadowSettingsRecord.h:149
const std::string & name() const
Returns setting name.
Definition: DtShadowSettingsRecord.h:101
unsigned int myGlobalLightShadowMapSize
Definition: DtShadowSettingsRecord.h:489
bool useFrontFaceCulling() const
Gets use front face culling.
Definition: DtShadowSettingsRecord.h:180
PreFilteringScheme
Definition: DtShadowSettingsRecord.h:59
unsigned int mySDSMReadBackLatency
Definition: DtShadowSettingsRecord.h:522

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)