VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtRenderSettingsRecord.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
12 
13 namespace makArchives
14 {
19  {
20  public:
21 
24 
27 
30 
33 
35  void swap(DtRenderSettingsRecord& other);
36 
38  bool wireframeMode() const;
39  void setWireframeMode(bool setting);
41 
43  bool terrainScalingEnabled() const;
44  void setTerrainScalingEnabled(bool enabled);
46 
48  double terrainScaleFactor() const;
49  void setTerrainScaleFactor(double scaleFactor);
51 
53  bool clearTrackHistoryOnTerrainScaleChanged() const;
54  void setClearTrackHistoryOnTerrainScaleChanged(bool clear);
56 
58  bool useAutofocus() const;
59  void setUseAutofocus(bool useAutofocus);
61 
63  double focalDepth() const;
64  void setFocalDepth(double focalDepth);
66 
68  double focalRange() const;
69  void setFocalRange(double focalRange);
71 
73  bool shadowMode() const;
74  void setShadowMode(bool setting);
76 
78  bool performanceOverlayEnabled() const;
79  void setPerformanceOverlayEnabled(bool setting);
81 
83  bool profilerOverlayEnabled() const;
84  void setProfilerOverlayEnabled(bool setting);
86 
88  float planViewGeocentricOccludedTransparency() const;
89  void setPlanViewGeocentricOccludedTransparency(float f);
91 
93  bool lensFlareEnabled() const;
94  void setLensFlareEnabled(bool setting);
96 
98  bool crepuscularRaysEnabled() const;
99  void setCrepuscularRaysEnabled(bool setting);
101 
103  bool instancedRenderingEnabled() const;
104  void setInstancedRenderingEnabled(bool setting);
106 
107  protected:
108 
110  friend class boost::serialization::access;
111 
115  template<class Archive>
116  void serialize(Archive & ar, const unsigned int version)
117  {
118  ar & BOOST_SERIALIZATION_NVP(myWireframeMode);
119  ar & BOOST_SERIALIZATION_NVP(myShadowMode);
120  ar & BOOST_SERIALIZATION_NVP(myShadowQuality);
121  ar & BOOST_SERIALIZATION_NVP(myEntityShadowMode);
122  ar & BOOST_SERIALIZATION_NVP(myPropShadowMode);
123  ar & BOOST_SERIALIZATION_NVP(myTerrainShadowMode);
124 
125  if(version >= 1)
126  {
127  ar & BOOST_SERIALIZATION_NVP(myPerformanceOverlayEnabled);
128  }
129 
130  if (version == 2)
131  {
132  // DDS Flip is no longer part of render settings.
133  bool flip;
134  ar & BOOST_SERIALIZATION_NVP(flip);
135  }
136 
137  if (version >= 4)
138  {
139  ar & BOOST_SERIALIZATION_NVP(myPlanViewGeocentricOccludedTransparency);
140  }
141  if (version >= 5)
142  {
143  ar & BOOST_SERIALIZATION_NVP(myTerrainScalingEnabled);
144  ar & BOOST_SERIALIZATION_NVP(myTerrainScaleFactor);
145  ar & BOOST_SERIALIZATION_NVP(myClearTrackHistoryOnTerrainScaleChanged);
146  }
147  if (version >= 7 && version <= 29)
148  {
149  ar & BOOST_SERIALIZATION_NVP(myPerPixelLightingEnabled);
150  }
151  if (version >= 8 && version <= 27)
152  {
153  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsEnabled);
154  }
155  if (version >= 9 && version <= 27)
156  {
157  ar & BOOST_SERIALIZATION_NVP(myStaticOceanLodRange);
158  }
159  if (version >= 10)
160  {
161  ar & BOOST_SERIALIZATION_NVP(myLensFlareEnabled);
162  ar & BOOST_SERIALIZATION_NVP(myCrepuscularRaysEnabled);
163  }
164  if (version >= 11 && version < 18)
165  {
166  ar & BOOST_SERIALIZATION_NVP(myRainSplashEffectEnabled);
167  ar & BOOST_SERIALIZATION_NVP(myWaveSplashEffectEnabled);
168  }
169  if (version >= 12 && version <= 27)
170  {
171  if (version < 18)
172  {
173  ar & BOOST_SERIALIZATION_NVP(myOceanSprayEffectEnabled);
174  }
175  ar & BOOST_SERIALIZATION_NVP(myOceanHeightMapResolution);
176  }
177  if (version >= 13)
178  {
179  ar & BOOST_SERIALIZATION_NVP(myUsePixelShaderForOsgEarthModels);
180  }
181  if (version >= 14)
182  {
183  ar & BOOST_SERIALIZATION_NVP(myMaximumDynamicLights);
184  }
185  if (version >= 15 && version <= 27)
186  {
187  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsLODScale);
188  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsSpecifyFarClip);
189  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsFarClip);
190  }
191  if (version >= 16 && version <= 27)
192  {
193  ar & BOOST_SERIALIZATION_NVP(myWaveSprayEffectEnabled);
194  ar & BOOST_SERIALIZATION_NVP(myRotorWashDecalEnabled);
195  }
196  if (version >= 17)
197  {
198  ar & BOOST_SERIALIZATION_NVP(myInstancedRenderingEnabled);
199  }
200  // version 18 only removed items...
201  if (version >= 19 && version <= 28)
202  {
203  ar & BOOST_SERIALIZATION_NVP(myAmbientFactor);
204  }
205  if (version >= 20 && version <= 28)
206  {
207  ar & BOOST_SERIALIZATION_NVP(myUseMaterialAmbient);
208  }
209  if (version >= 21)
210  {
211  ar & BOOST_SERIALIZATION_NVP(myUseAutofocus);
212  ar & BOOST_SERIALIZATION_NVP(myFocalRange);
213  ar & BOOST_SERIALIZATION_NVP(myFocalDepth);
214  }
215  if (version >= 22 && version <= 28)
216  {
217  ar & BOOST_SERIALIZATION_NVP(myDiffuseScaleFactor);
218  ar & BOOST_SERIALIZATION_NVP(myUseMaterialDiffuse);
219  }
220  if(version >= 23)
221  {
222  ar & BOOST_SERIALIZATION_NVP(myProfilerOverlayEnabled);
223  }
224  if(version >= 24 && version <= 27)
225  {
226  ar & BOOST_SERIALIZATION_NVP(myTidalStreamWakesEnabled);
227  }
228  if(version >= 25 && version <= 27)
229  {
230  ar & BOOST_SERIALIZATION_NVP(myRegenerateCubeMapThreshold);
231  ar & BOOST_SERIALIZATION_NVP(myRegenerateHeightMapPercThreshold);
232  ar & BOOST_SERIALIZATION_NVP(myOmitCloudInCubeMap);
233  }
234  if(version >= 26 && version <= 27)
235  {
236  ar & BOOST_SERIALIZATION_NVP(myOceanHeightMapTextureSize);
237  }
238  if (version >= 27 && version <= 28)
239  {
240  ar & BOOST_SERIALIZATION_NVP(myDiffuseFactor);
241  ar & BOOST_SERIALIZATION_NVP(myAmbientScaleFactor);
242  }
243  }
244 
245  protected:
261  double myFocalDepth;
262  double myFocalRange;
263 
267 
271 
292  };
293 }
294 
295 

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)