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) 2016 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 
108  float pagedLodMagnificationHighLodAngle() const;
109  void setPagedLodMagnificationHighLodAngle(float angle);
111 
112  protected:
113 
115  friend class boost::serialization::access;
116 
120  template<class Archive>
121  void serialize(Archive & ar, const unsigned int version)
122  {
123  ar & BOOST_SERIALIZATION_NVP(myWireframeMode);
124  ar & BOOST_SERIALIZATION_NVP(myShadowMode);
125  ar & BOOST_SERIALIZATION_NVP(myShadowQuality);
126  ar & BOOST_SERIALIZATION_NVP(myEntityShadowMode);
127  ar & BOOST_SERIALIZATION_NVP(myPropShadowMode);
128  ar & BOOST_SERIALIZATION_NVP(myTerrainShadowMode);
129 
130  if(version >= 1)
131  {
132  ar & BOOST_SERIALIZATION_NVP(myPerformanceOverlayEnabled);
133  }
134 
135  if (version == 2)
136  {
137  // DDS Flip is no longer part of render settings.
138  bool flip;
139  ar & BOOST_SERIALIZATION_NVP(flip);
140  }
141 
142  if (version >= 4)
143  {
144  ar & BOOST_SERIALIZATION_NVP(myPlanViewGeocentricOccludedTransparency);
145  }
146  if (version >= 5)
147  {
148  ar & BOOST_SERIALIZATION_NVP(myTerrainScalingEnabled);
149  ar & BOOST_SERIALIZATION_NVP(myTerrainScaleFactor);
150  ar & BOOST_SERIALIZATION_NVP(myClearTrackHistoryOnTerrainScaleChanged);
151  }
152  if (version >= 7 && version <= 29)
153  {
154  ar & BOOST_SERIALIZATION_NVP(myPerPixelLightingEnabled);
155  }
156  if (version >= 8 && version <= 27)
157  {
158  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsEnabled);
159  }
160  if (version >= 9 && version <= 27)
161  {
162  ar & BOOST_SERIALIZATION_NVP(myStaticOceanLodRange);
163  }
164  if (version >= 10)
165  {
166  ar & BOOST_SERIALIZATION_NVP(myLensFlareEnabled);
167  ar & BOOST_SERIALIZATION_NVP(myCrepuscularRaysEnabled);
168  }
169  if (version >= 11 && version < 18)
170  {
171  ar & BOOST_SERIALIZATION_NVP(myRainSplashEffectEnabled);
172  ar & BOOST_SERIALIZATION_NVP(myWaveSplashEffectEnabled);
173  }
174  if (version >= 12 && version <= 27)
175  {
176  if (version < 18)
177  {
178  ar & BOOST_SERIALIZATION_NVP(myOceanSprayEffectEnabled);
179  }
180  ar & BOOST_SERIALIZATION_NVP(myOceanHeightMapResolution);
181  }
182  if (version >= 13)
183  {
184  ar & BOOST_SERIALIZATION_NVP(myUsePixelShaderForOsgEarthModels);
185  }
186  if (version >= 14)
187  {
188  ar & BOOST_SERIALIZATION_NVP(myMaximumDynamicLights);
189  }
190  if (version >= 15 && version <= 27)
191  {
192  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsLODScale);
193  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsSpecifyFarClip);
194  ar & BOOST_SERIALIZATION_NVP(myOceanPlanarReflectionsFarClip);
195  }
196  if (version >= 16 && version <= 27)
197  {
198  ar & BOOST_SERIALIZATION_NVP(myWaveSprayEffectEnabled);
199  ar & BOOST_SERIALIZATION_NVP(myRotorWashDecalEnabled);
200  }
201  if (version >= 17)
202  {
203  ar & BOOST_SERIALIZATION_NVP(myInstancedRenderingEnabled);
204  }
205  // version 18 only removed items...
206  if (version >= 19 && version <= 28)
207  {
208  ar & BOOST_SERIALIZATION_NVP(myAmbientFactor);
209  }
210  if (version >= 20 && version <= 28)
211  {
212  ar & BOOST_SERIALIZATION_NVP(myUseMaterialAmbient);
213  }
214  if (version >= 21)
215  {
216  ar & BOOST_SERIALIZATION_NVP(myUseAutofocus);
217  ar & BOOST_SERIALIZATION_NVP(myFocalRange);
218  ar & BOOST_SERIALIZATION_NVP(myFocalDepth);
219  }
220  if (version >= 22 && version <= 28)
221  {
222  ar & BOOST_SERIALIZATION_NVP(myDiffuseScaleFactor);
223  ar & BOOST_SERIALIZATION_NVP(myUseMaterialDiffuse);
224  }
225  if(version >= 23)
226  {
227  ar & BOOST_SERIALIZATION_NVP(myProfilerOverlayEnabled);
228  }
229  if(version >= 24 && version <= 27)
230  {
231  ar & BOOST_SERIALIZATION_NVP(myTidalStreamWakesEnabled);
232  }
233  if(version >= 25 && version <= 27)
234  {
235  ar & BOOST_SERIALIZATION_NVP(myRegenerateCubeMapThreshold);
236  ar & BOOST_SERIALIZATION_NVP(myRegenerateHeightMapPercThreshold);
237  ar & BOOST_SERIALIZATION_NVP(myOmitCloudInCubeMap);
238  }
239  if(version >= 26 && version <= 27)
240  {
241  ar & BOOST_SERIALIZATION_NVP(myOceanHeightMapTextureSize);
242  }
243  if (version >= 27 && version <= 28)
244  {
245  ar & BOOST_SERIALIZATION_NVP(myDiffuseFactor);
246  ar & BOOST_SERIALIZATION_NVP(myAmbientScaleFactor);
247  }
248  if (version >= 31)
249  {
250  ar & BOOST_SERIALIZATION_NVP(myPagedLodMagnificationHighLodAngle);
251  }
252  }
253 
254  protected:
270  double myFocalDepth;
271  double myFocalRange;
272 
274 
278 
282 
303  };
304 }
305 
306 

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)