VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDeSharedState.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/DtDe.h>
14 #include <vrvMath/DtColorValue.h>
15 #include <vrvMath/DtVector2.h>
17 #include <vrvUtil/signalslib.h>
18 
19 namespace makVrv
20 {
21 
22  class DtCoordinateSystem;
23  class DtDeSharedStateProctor;
24  class DtModelDefinition;
25  class DtModelDefinitionManager;
26  class DtModelSetRealizationManager;
27 
28  class DtModelDefinition;
29  class DtLightPointManager;
30  class DtSharedSettingsManager;
31  class DtDeRecord;
32  class DtMessageClient;
33  enum class DtModelSetId;
34 
48  {
49 
50  public:
51 
53  friend class DtDeSharedStateCreator;
54 
57  friend class DtDeSharedStateProctor;
58 
60  virtual ~DtDeSharedState();
61 
63  DtDeSharedState() = delete;
64 
66  DtDeSharedState(const DtDeSharedState&) = delete;
67 
69  DtDeSharedState& operator=(const DtDeSharedState&) = delete;
70 
72  virtual void initialize();
73 
75 
76 
79  virtual const DtModelDefinitionManager& modelDefinitionManager() const;
80  virtual DtModelDefinitionManager& modelDefinitionManager();
81 
84  virtual const DtModelSetRealizationManager& modelSetRealizationManager() const;
85  virtual DtModelSetRealizationManager& modelSetRealizationManager();
86 
89  virtual void setVisualizeModelSet( DtModelSetId modelset, bool visualize);
90 
93  virtual void addModelDefinition(const DtModelDefinition& definition);
94 
97  virtual void setModelDefinitionManager(
98  const DtModelDefinitionManager& definition);
99 
103  virtual void renameModelDefinition(const DtModelDefinition& old,
104  const DtModelDefinition& newDef);
105 
108  virtual void destroyModelDefinition(const DtModelDefinition& definition);
109 
111  virtual void setModelInstancingEnabled(bool);
112 
114  virtual void clearModelInstancingCache();
115 
117 
119 
120  virtual void setCoordinateSystem(const std::string& coordinateSystemName,
122  const std::string& coordinateSystemParameters);
123 
125  const DtCoordinateSystem& coordinateSystem() const;
127  DtCoordinateSystem& coordinateSystem();
128 
129 
131 
133 
134 
150  virtual void setDateAndTime(int year, DtDeTimeManager::Month month,
151  int dayOfMonth, int hour, int minutes, double seconds);
152 
155  virtual void setUseGlobalTimeZone(bool);
156 
159  virtual void setTimeScale(double timeScale);
160 
162  const DtDeTimeManager& timeManager() const;
163 
166  DtDeTimeManager& timeManager();
167 
169 
171 
172 
174  virtual void reloadShader();
175 
177  virtual void setWireframeMode(bool state);
178  virtual bool wireframeMode() const;
179 
181  virtual bool terrainScalingEnabled() const;
182  virtual void setTerrainScalingEnabled(bool enabled);
183 
184  virtual double terrainScaleFactor() const;
185  virtual void setTerrainScaleFactor(double scaleFactor);
186 
187  virtual bool clearTrackHistoryOnTerrainScaleChanged() const;
188  virtual void setClearTrackHistoryOnTerrainScaleChanged(bool clear);
189 
192  virtual float globalAmbientValue() const;
193  virtual void setGlobalAmbientValue(float globalAmbientValue);
194 
195  virtual bool useGlobalAmbient() const;
196  virtual void setUseGlobalAmbient(bool useGlobalAmbient);
197 
200  virtual float globalDiffuseValue() const;
201  virtual void setGlobalDiffuseValue(float globalDiffuseValue);
202 
203  virtual bool useGlobalDiffuse() const;
204  virtual void setUseGlobalDiffuse(bool useGlobalDiffuse);
205 
207  virtual void setPlanViewGeocentricOccludedTransparency(float f);
208  virtual float planViewGeocentricOccludedTransparency() const;
209 
210  virtual void setPerformanceOverlayState(unsigned int state);
211  virtual unsigned int performanceOverlayState() const;
212 
213  virtual void setProfilerOverlayOn(bool enabled);
214  virtual bool profilerOverlayEnabled() const;
215 
216  virtual void setImguiOverlayOn(bool enabled);
217  virtual bool imguiOverlayOn() const;
218 
219  virtual bool perPixelLightingEnabled() const;
220  virtual void setPerPixelLightingEnabled(bool setting);
221 
222  virtual bool crepuscularRaysEnabled() const;
223  virtual void setCrepuscularRaysEnabled(bool setting);
224 
226  virtual bool dofUseAutofocus() const;
227  virtual void setDofUseAutofocus(bool useAutofocus);
228 
230  virtual double dofFocalDepth() const;
231  virtual void setDofFocalDepth(double focalDepth);
232 
234  virtual double dofFocalRange() const;
235  virtual void setDofFocalRange(double focalRange);
236 
237  // size of the water on screen effect(Rain Splash/Ocean Spray/Wave Splash) in percentage, default is 100(%)
238  virtual double waterOnScreenSize() const;
239  virtual void setWaterOnScreenSize(double size);
240 
243  virtual float hbaoRadius() const;
244  virtual void setHbaoRadius(float value);
245 
247  virtual float hbaoBias() const;
248  virtual void setHbaoBias(float value);
249 
251  virtual float hbaoExponent() const;
252  virtual void setHbaoExponent(float value);
253 
255  virtual float hbaoSmallScalar() const;
256  virtual void setHbaoSmallScalar(float value);
257 
259  virtual float hbaoLargeScalar() const;
260  virtual void setHbaoLargeScalar(float value);
261 
264  virtual int hbaoDepthClampMode() const;
265  virtual void setHbaoDepthClampMode(int mode);
266 
267 
271  virtual float indirectLodTransitionPercentage() const;
272  virtual void setIndirectLodTransitionPercentage(float val);
273 
274  virtual int componentVisualizationMode() const;
275  virtual void setComponentVisualizationMode(int value);
276 
278  virtual bool colorizePerDrawableEnabled() const;
279  virtual void setColorizePerDrawableEnabled(bool flag);
280 
282  virtual bool atcGlobalModelEnable() const;
283  virtual void setAtcGlobalModelEnable(bool flag);
284 
286  virtual bool atcGlobalTerrainEnable() const;
287  virtual void setAtcGlobalTerrainEnable(bool flag);
288 
290  virtual bool atcEnableDither() const;
291  virtual void setAtcEnableDither(bool flag);
292 
293  virtual double regenerateCubeMapThreshold() const;
294  virtual void setRegenerateCubeMapThreshold(double threshold);
295 
296  virtual double regenerateHeightMapPercThreshold() const;
297  virtual void setRegenerateHeightMapPercThreshold(double threshold);
298 
299  virtual bool omitCloudInCubeMap() const;
300  virtual void setOmitCloudInCubeMap(bool omit);
301 
303  virtual void setShadowsEnabled(bool shadowMode);
305  virtual bool shadowsEnabled() const;
307 
309  virtual void setApplyShadowToAmbientLighting(bool applyShadowToAmbient);
311  virtual bool applyShadowToAmbientLighting() const;
313 
315  virtual void setShadowsEnabledOnOcean(bool shadowMode);
317  virtual bool shadowsEnabledOnOcean() const;
319 
321  virtual void setSimulationTimeIsPaused(bool setting);
323  virtual bool simulationTimeIsPaused() const;
325 
327  virtual void setWheelRotationEnabled(bool setting);
329  virtual bool wheelRotationEnabled() const;
331 
333  virtual void setAdaptiveTickRateEnabled(bool setting);
335  virtual bool adaptiveTickRateEnabled() const;
337 
339  virtual void setPaperMapEnabled(bool setting);
342  virtual bool paperMapEnabled() const;
344 
346  virtual void setPaperMapLayerTimeout(double val);
348  virtual double paperMapLayerTimeout() const;
350 
352  virtual void setPaperMapGroup(std::string group);
354  virtual std::string paperMapGroup() const;
356 
358  virtual bool paperMapIntersectionOverride() const;
361  virtual void setPaperMapIntersectionOverride(bool setting);
363 
364  virtual void loadRenderSettings(const std::string& filepath);
365  virtual void saveRenderSettings(const std::string& filepath);
366  virtual void loadDefaultRenderSettings(bool useOnlyFactorySettings);
367  virtual void saveDefaultRenderSettings();
368  virtual void updateRenderState();
369 
371 
373 
374 
376  virtual bool artPartSmoothingEnabled() const;
377 
379  virtual void setArtPartSmoothingEnabled(bool setting);
380 
383  virtual float artPartSmoothingPeriod() const;
384 
387  virtual void setArtPartSmoothingPeriod(float period);
388 
389  virtual void loadEntityDisplaySettings(const std::string& filepath);
390  virtual void saveEntityDisplaySettings(const std::string& filepath);
391  virtual void loadDefaultEntityDisplaySettings(bool useOnlyFactorySettings);
392  virtual void saveDefaultEntityDisplaySettings();
393  virtual void updateEntityDisplayState();
395 
397 
398 
401  virtual void setDdsFlip(bool state);
402  virtual bool ddsFlip() const;
404 
410  virtual void setIndirectBufferUpdateTimeBudget( int milliseconds );
411  virtual int indirectBufferUpdateTimeBudget() const;
413 
416  virtual void setCdbParallelForThreadCount( int threadCount );
417  virtual int cdbParallelForThreadCount() const;
419 
420  virtual void loadLoaderSettings(const std::string& filepath);
421  virtual void saveLoaderSettings(const std::string& filepath);
422  virtual void loadDefaultLoaderSettings(bool useOnlyFactorySettings);
423  virtual void saveDefaultLoaderSettings();
424  virtual void updateLoaderState();
425 
427 
429 
430 
432  virtual void setAccelerationCachingEnabled(bool enabled);
433 
435  virtual bool accelerationCachingEnabled() const;
436 
438  virtual void clearAccelerationCache() const;
439 
441  virtual void setInstancingEnabled(bool enabled);
442 
444  virtual void setClearInstancesOnNewSceneEnabled(bool enabled);
445 
447  virtual bool instancingEnabled() const;
448 
450  virtual bool clearInstancesOnNewScene() const;
451 
453  virtual void clearInstancingCache();
454 
456  virtual void setCompressTextures(bool enabled);
457 
459  virtual bool compressTextures() const;
460 
461  virtual void loadCacheSettings(const std::string& filepath);
462  virtual void saveCacheSettings(const std::string& filepath);
463  virtual void loadDefaultCacheSettings(bool useOnlyFactorySettings);
464  virtual void saveDefaultCacheSettings();
465  virtual void updateCacheState();
466 
468 
470 
471 
472  virtual bool oceanPlanarReflectionsEnabled() const;
473  virtual void setOceanPlanarReflectionsEnabled(bool setting);
474 
475  virtual float oceanPlanarReflectionsLODScale() const;
476  virtual void setOceanPlanarReflectionsLODScale(float setting);
477 
478  virtual bool oceanPlanarReflectionsSpecifyFarClip() const;
479  virtual void setOceanPlanarReflectionsSpecifyFarClip(bool setting);
480 
481  virtual double oceanPlanarReflectionsFarClip() const;
482  virtual void setOceanPlanarReflectionsFarClip(double setting);
483 
484  virtual bool planarReflectionsShowSpeedTrees() const;
485  virtual void setPlanarReflectionsShowSpeedTrees(bool flag);
486 
487  virtual double staticOceanLodRange() const;
488  virtual void setStaticOceanLodRange(double range);
489 
490  virtual bool waveSprayEffectEnabled() const;
491  virtual void setWaveSprayEffectEnabled(bool setting);
492 
493  virtual bool rotorWashDecalEnabled() const;
494  virtual void setRotorWashDecalEnabled(bool setting);
495 
496  virtual double oceanHeightMapResolution() const;
497  virtual void setOceanHeightMapResolution(double setting);
498 
499  virtual void setOceanHeightMapTextureSize(int setting);
500  virtual int oceanHeightMapTextureSize() const;
501 
502 
506  virtual void setTidalStreamWakesEnabled(bool enabled);
507 
511  virtual bool tidalStreamWakesEnabled() const;
512 
513  virtual int planarReflectionTextureWidth() const;
514  virtual void setPlanarReflectionTextureWidth(int w);
515 
516  virtual int planarReflectionTextureHeight() const;
517  virtual void setPlanarReflectionTextureHeight(int h);
518 
519  virtual unsigned int oceanQuality() const;
520  virtual void setOceanQuality(unsigned int quality);
521 
522  virtual unsigned int oceanSpectralModel() const;
523  virtual void setOceanSpectralModel(unsigned int model);
524 
525  virtual void loadOceanRenderSettings(const std::string& filepath);
526  virtual void saveOceanRenderSettings(const std::string& filepath);
527  virtual void loadDefaultOceanRenderSettings(bool useOnlyFactorySettings);
528  virtual void saveDefaultOceanRenderSettings();
529  virtual void updateOceanRenderState();
531 
533  virtual void setTerrainMagnificationScaleFactor(float scale);
534  virtual float terrainMagnificationScaleFactor() const;
535 
537  virtual void setTerrainMagnificationHighLodAngle(float radians);
538  virtual float terrainMagnificationHighLodAngle() const;
539  virtual void setMetaflightPagingDistScale(float dist);
540  virtual float metaflightPagingDistScale() const;
541  virtual void setMetaflightPagingDistScaleEnabled(bool enabled);
542  virtual bool metaflightPagingDistScaleEnabled() const;
543  virtual void setIndirectDistScale(float scale);
544  virtual float indirectDistScale() const;
545  virtual void setIndirectDistScaleEnabled(bool enabled);
546  virtual bool indirectDistScaleEnabled() const;
547 
549 
550 
551  virtual float lightingEmissionScale() const;
552  virtual void setLightingEmissionScale(float setting);
553 
554  virtual float lightingDiffuseScale() const;
555  virtual void setLightingDiffuseScale(float setting);
556 
557  virtual float lightingAmbientScale() const;
558  virtual void setLightingAmbientScale(float setting);
559 
560  virtual void loadLightingRenderSettings(const std::string& filepath);
561  virtual void saveLightingRenderSettings(const std::string& filepath);
562  virtual void loadDefaultLightingRenderSettings(bool useOnlyFactorySettings);
563  virtual void saveDefaultLightingRenderSettings();
564  virtual void updateLightingRenderState();
566 
567 
569 
570 
571  virtual bool intersectorDrawEnabled() const;
572  virtual void setIntersectorDrawEnabled(bool setting);
573 
574  virtual float intersectorDrawnDuration() const;
575  virtual void setIntersectorDrawnDuration(float setting);
576 
577  virtual const DtColorValue& failedIntersectorColor() const;
578  virtual void setFailedIntersectorColor(const DtColorValue& setting);
579 
580  virtual const DtColorValue& oddSegmentIntersectorColor() const;
581  virtual void setOddSegmentIntersectorColor(const DtColorValue& setting);
582 
583  virtual const DtColorValue& evenSegmentIntersectorColor() const;
584  virtual void setEvenSegmentIntersectorColor(const DtColorValue& setting);
585 
586  virtual void loadIntersectorSettings(const std::string& filepath);
587  virtual void saveIntersectorSettings(const std::string& filepath);
588  virtual void loadDefaultIntersectorSettings(bool useOnlyFactorySettings);
589  virtual void saveDefaultIntersectorSettings();
590  virtual void updateIntersectorState();
592 
594 
595 
596  virtual const bool diGuyInstancingEnabled() const;
597  virtual void setDiGuyInstancingEnabled(bool enabled);
598 
599  virtual const int diGuyInstancedLod() const;
600  virtual void setDiGuyInstancedLod(int lod);
601 
602  virtual const bool diGuyVisualizeInstancing() const;
603  virtual void setDiGuyVisualizeInstancing(bool enabled);
604 
605  virtual const bool diGuyTextureVariationsEnabled() const;
606  virtual void setDiGuyTextureVariationsEnabled(bool enabled);
607 
608  virtual const float diGuyMaxDrawDistance() const;
609  virtual void setDiGuyMaxDrawDistance(float distance);
610 
611  virtual const float diGuyMaxMotionUpdateDistance() const;
612  virtual void setDiGuyMaxMotionUpdateDistance(float distance);
613 
614  virtual const bool diGuyMultiThreadUpdate() const;
615  virtual void setDiGuyMultiThreadUpdate(bool enabled);
616 
617  virtual void loadDiGuySettings(const std::string& filepath);
618  virtual void saveDiGuySettings(const std::string& filepath);
619  virtual void loadDefaultDiGuySettings(bool useOnlyFactorySettings);
620  virtual void saveDefaultDiGuySettings();
621  virtual void updateDiGuyState();
622 
624 
626 
627 
629  virtual bool enableHdr() const;
630  virtual void setEnableHdr(bool enabled);
631 
632  virtual bool enableHdrAutoExposure() const;
633  virtual void setEnableHdrAutoExposure(bool enabled);
634 
635  virtual bool enableHdrExposureCorrelation() const;
636  virtual void setEnableHdrExposureCorrelation(bool enabled);
637 
638  virtual bool enableHdrBloom() const;
639  virtual void setEnableHdrBloom(bool enabled);
640 
641  virtual bool enableHdrStreaks() const;
642  virtual void setEnableHdrStreaks(bool enabled);
643 
644  virtual bool enableHdrLensFlare() const;
645  virtual void setEnableHdrLensFlare(bool enabled);
646 
647  virtual void setLightPointScale(double val);
648  virtual double lightPointScale() const;
649 
650  virtual void setDynamicLightScale(double val);
651  virtual double dynamicLightScale() const;
652 
653  virtual void setEmissiveTextureScale(double val);
654  virtual double emissiveTextureScale() const;
655 
656  virtual void setSpecularScale(double val);
657  virtual double specularScale() const;
658 
659  virtual void setShininessScale(double val);
660  virtual double shininessScale() const;
661 
662  virtual void setAutoExposureRateScale(double val);
663  virtual double autoExposureRateScale() const;
664 
665  virtual void setAutoExposurePreScale(double val);
666  virtual double autoExposurePreScale() const;
667 
668  virtual void setAutoExposureMinDiff(double val);
669  virtual double autoExposureMinDiff() const;
670 
671  virtual void setAutoExposureMaxDiff(double val);
672  virtual double autoExposureMaxDiff() const;
673 
674  virtual void setAutoExposureClampMin(double val);
675  virtual double autoExposureClampMin() const;
676 
677  virtual void setAutoExposureClampMax(double val);
678  virtual double autoExposureClampMax() const;
679 
680  virtual void setAutoExposurePostScale(double val);
681  virtual double autoExposurePostScale() const;
682 
683  virtual void setBloomScale(double val);
684  virtual double bloomScale() const;
685 
686  virtual void setStreakIntensityScale(double val);
687  virtual double streakIntensityScale() const;
688 
689  virtual void setNumStreaks(int val);
690  virtual int numStreaks() const;
691 
692  virtual void setStreaksLenScale(double val);
693  virtual double streaksLenScale() const;
694 
695  virtual void setStreakRotationOffset(double val);
696  virtual double streakRotationOffset() const;
697 
698  virtual void setLensFlareScale(double val);
699  virtual double lensFlareScale() const;
700 
701  virtual void setGamma(double val);
702  virtual double gamma() const;
703 
704  virtual void setHdrResolutionScale(int val);
705  virtual int hdrResolutionScale() const;
706 
707  virtual void setLightPointGroupColor(const std::string& groupName, DtColorValue color, bool createGroupIfNonexistent);
708  virtual DtColorValue lightPointGroupColor(const std::string& groupName);
709 
710  //this is not saved out but is a part of how the HDR post processor works
711  // scale for the tonemapping, shared so slaves match master intensity
712  virtual void setHdrOutputScale(double val);
713  virtual double hdrOutputScale() const;
714 
715  virtual void loadPostProcessorSettings(const std::string& filepath);
716  virtual void savePostProcessorSettings(const std::string& filepath);
717  virtual void loadDefaultPostProcessorSettings(bool useOnlyFactorySettings);
718  virtual void saveDefaultPostProcessorSettings();
719  virtual void updatePostProcessorState();
721 
723  virtual void setLimitEntityTextures(const DtVector2<int>& resolution);
726  virtual const DtVector2<int>& limitEntityTextures(void) const;
728 
729 
731  virtual void excludeFromTextureLimits(const std::string& modelDef);
733  virtual const std::unordered_set<std::string> modelDefsExcludedFromTextureLimits(void);
735 
737  virtual void setLimitEntityTexturesProportional(bool proportional);
741  virtual bool limitEntityTexturesProportional(void) const;
743 
745  virtual void setLimitTerrainTextures(const DtVector2<int>& resolution);
748  virtual const DtVector2<int>& limitTerrainTextures() const;
750 
751 
753  virtual void setLimitEarthTerrainTextures(int resolution);
756  virtual int limitEarthTerrainTextures() const;
758 
759 
761  virtual void setLimitEarthSplattingTextures(int resolution);
764  virtual int limitEarthSplattingTextures() const;
766 
768  virtual void setLimitEarthVegetationTextures(int resolution);
771  virtual int limitEarthVegetationTextures() const;
773 
776  virtual void initializeSharedChangeManager();
777 
779 
780 
783  virtual void synchronizeSlave(DtDeRecord* igRecord);
784 
786 
787  void setAutoSave(bool b)
788  {
789  myAutoSave = b;
790  }
791 
792  bool autoSave() const
793  {
794  return myAutoSave;
795  }
796 
797  protected:
798 
801 
803  virtual void sendModelDefinitionsToSlave(DtMessageClient* messageClient);
804 
807  virtual void sendModelSetConfigurationToSlave(
808  DtMessageClient* messageClient);
809 
811  virtual void sendLightPointGroupsToSlave(DtMessageClient* messageClient);
812 
814  virtual void local_setLightPointGroupColor(const std::string& groupName, const DtColorValue& color, bool createGroupIfNonexistent);
815 
817 
818 
820  virtual void local_setModelDefinitionManager(const DtModelDefinitionManager& definition);
821 
823  virtual void local_addModelDefinition(const DtModelDefinition& definition);
824 
826  virtual void local_destroyModelDefinition(const std::string& definition);
828 
830  virtual void local_setModelInstancingEnabled(bool);
831 
833  virtual void local_clearModelInstancingCache();
834 
836  virtual void local_reloadShader();
837 
839  virtual void local_setWireframeMode(bool mode);
840 
842  virtual void local_setTerrainScalingEnabled(bool enabled);
843 
845  virtual void local_setTerrainScaleFactor(double scaleFactor);
846 
848  virtual void local_setGlobalAmbientValue(float globalAmbientValue);
849 
851  virtual void local_setUseGlobalAmbient(bool useGlobalAmbient);
852 
854  virtual void local_setGlobalDiffuseValue(double globalDiffuseValue);
855 
857  virtual void local_setUseGlobalDiffuse(bool useGlobalDiffuse);
858 
860  virtual void local_setClearTrackHistoryOnTerrainScaleChanged(bool clear);
861 
863  virtual void local_setPlanViewGeocentricOccludedTransparency(float alpha);
864 
866  virtual void local_setShadowsEnabled(bool enable);
867 
869  virtual void local_setShadowsEnabledOnOcean(bool enable);
870 
872  virtual void local_ddsFlipState(bool flip);
873 
878  virtual void local_setIndirectBufferUpdateTimeBudget( int milliseconds );
879 
881  virtual void local_setCdbParallelForThreadCount( int threadCount );
882 
884  virtual void local_setVisualizeModelSet(DtModelSetId modelSet, bool visualize);
885 
887  void local_setCoordinateSystem(const std::string& coordinateSystemName,
888  const std::string& coordinateSystemParameters);
889 
891  virtual void local_setPerPixelLightingEnabled(bool mode);
892 
894  virtual void local_setOceanPlanarReflectionsEnabled(bool mode);
895 
897  virtual void local_setOceanPlanarReflectionsLODScale(float val);
898 
900  virtual void local_setOceanPlanarReflectionsSpecifyFarClip(bool mode);
901 
903  virtual void local_setOceanPlanarReflectionsFarClip(double val);
904 
906  virtual void local_setPlanarReflectionsShowSpeedTrees(bool flag);
907 
908  virtual void local_setStaticOceanLodRange(double range);
909 
911  virtual void local_setCrepuscularRaysEnabled(bool mode);
912 
914  virtual void local_setColorizePerDrawableEnabled(bool mode);
915 
917  virtual void local_setWaveSprayEffectEnabled(bool mode);
918 
920  virtual void local_setRotorWashDecalEnabled(bool mode);
921 
923  virtual void local_setOceanHeightMapResolution(double resolution);
924 
926 
927  void local_setDateAndTime(int year, DtDeTimeManager::Month month, int dayOfMonth,
928  int hour, int minutes, double seconds);
929  void local_setTimeScale(double timeScale);
930  void local_setUseGlobalTimeZone(bool);
932 
935  virtual void slot_dateChanged();
936 
938 
939 
941  virtual void local_setAccelerationCachingEnabled(bool enabled);
942 
944  virtual void local_clearAccelerationCache();
945 
947  virtual void local_setInstancingEnabled(bool enabled);
948 
950  virtual void local_setClearInstancesOnNewScene(bool enabled);
951 
953  virtual void local_clearInstancingCache();
954 
956  virtual void local_setCompressTextures(bool enabled);
957 
959  virtual void local_setTidalStreamWakesEnabled(bool enabled);
961 
963  virtual void local_setRegenerateCubeMapThreshold(double threshold);
964 
966  virtual void local_setRegenerateHeightMapPercThreshold(double threshold);
967 
969  virtual void local_setOmitCloudInCubeMap(bool enabled);
970 
972  virtual void local_setOceanHeightMapTextureSize(int val);
973 
974  virtual void local_setPlanarReflectionTextureWidth(int w);
975 
976  virtual void local_setPlanarReflectionTextureHeight(int w);
977 
978  virtual void local_setOceanQuality(unsigned int setting);
979 
980  virtual void local_setOceanSpectralModel(unsigned int setting);
981 
983  virtual void local_setLightingEmissionScale(float val);
985  virtual void local_setLightingDiffuseScale(float val);
987  virtual void local_setLightingAmbientScale(float val);
988 
989 
990  virtual void local_setIntersectorDrawEnabled(bool setting);
991 
992  virtual void local_setIntersectorDrawnDuration(float setting);
993 
994  virtual void local_setFailedIntersectorColor(const DtColorValue& setting);
995 
996  virtual void local_setOddSegmentIntersectorColor(const DtColorValue& setting);
997 
998  virtual void local_setEvenSegmentIntersectorColor(const DtColorValue& setting);
999 
1000 
1001  virtual void local_setDiGuyInstancingEnabled(bool color);
1002 
1003  virtual void local_setDiGuyInstancedLod(int lod);
1004 
1005  virtual void local_setDiGuyVisualizeInstancing(bool enabled);
1006 
1007  virtual void local_setDiGuyTextureVariationsEnabled(bool enabled);
1008 
1009  virtual void local_setDiGuyMaxDrawDistance(float distance);
1010 
1011  virtual void local_setDiGuyMaxMotionUpdateDistance(float distance);
1012 
1013  virtual void local_setDiGuyMultiThreadUpdate(bool enabled);
1014 
1015  virtual void local_setTerrainMagnificationHighLodAngle(float radians);
1016 
1017  virtual void local_setTerrainMagnificationScaleFactor(float scale);
1018 
1019  virtual void local_setSimulationTimeIsPaused(bool val);
1020 
1022  virtual void local_setMetaflightPagingDistScale(float dist);
1023 
1025  virtual void local_setMetaflightPagingDistScaleEnabled(bool enabled);
1026 
1028  virtual void local_setIndirectDistScale(float scale);
1029 
1031  virtual void local_setIndirectDistScaleEnabled(bool enabled);
1032 
1034  virtual void local_setDofUseAutofocus(bool useAutofocus);
1035 
1037  virtual void local_setDofFocalDepth(double focalDepth);
1038 
1040  virtual void local_setDofFocalRange(double focalRange);
1041 
1042  // size of the water on screen effect(Rain Splash/Ocean Spray/Wave Splash) in percentage, default is 100(%)
1043  virtual void local_setWaterOnScreenSize(double size);
1044 
1047  virtual void local_setHbaoRadius(float value);
1049  virtual void local_setHbaoBias(float value);
1051  virtual void local_setHbaoExponent(float value);
1053  virtual void local_setHbaoSmallScalar(float value);
1055  virtual void local_setHbaoLargeScalar(float value);
1058  virtual void local_setHbaoDepthClampMode(int mode);
1059 
1063  virtual void local_setIndirectLodTransitionPercentage(float val);
1064 
1066  virtual void local_setWheelRotationEnabled(bool enabled);
1067 
1069  virtual void local_setAdaptiveTickRateEnabled(bool enabled);
1070 
1072  virtual void local_setArtPartSmoothingEnabled(bool setting);
1073 
1075  virtual void local_setArtPartSmoothingPeriod(float period);
1076 
1078  virtual void local_setEnableHdr(bool enabled);
1079  virtual void local_setEnableHdrAutoExposure(bool enabled);
1080  virtual void local_setEnableHdrExposureCorrelation(bool enabled);
1081  virtual void local_setEnableHdrBloom(bool enabled);
1082  virtual void local_setEnableHdrStreaks(bool enabled);
1083  virtual void local_setEnableHdrLensFlare(bool enabled);
1084 
1085 
1086  virtual void local_setLightPointScale(double val);
1087  virtual void local_setDynamicLightScale(double val);
1088  virtual void local_setEmissiveTextureScale(double val);
1089  virtual void local_setSpecularScale(double val);
1090  virtual void local_setShininessScale(double val);
1091  virtual void local_setAutoExposureRateScale(double val);
1092  virtual void local_setAutoExposurePreScale(double val);
1093  virtual void local_setAutoExposureMinDiff(double val);
1094  virtual void local_setAutoExposureMaxDiff(double val);
1095  virtual void local_setAutoExposureClampMin(double val);
1096  virtual void local_setAutoExposureClampMax(double val);
1097  virtual void local_setAutoExposurePostScale(double val);
1098  virtual void local_setBloomScale(double val);
1099  virtual void local_setStreakIntensityScale(double val);
1100  virtual void local_setNumStreaks(int val);
1101  virtual void local_setStreaksLenScale(double val);
1102  virtual void local_setStreakRotationOffset(double val);
1103  virtual void local_setLensFlareScale(double val);
1104  virtual void local_setGamma(double val);
1105  virtual void local_setHdrResolutionScale(int val);
1106 
1107  virtual void local_setHdrOutputScale(double val);
1108 
1109  virtual void local_setAtcEnableDither(bool flag);
1110  virtual void local_setAtcGlobalTerrainEnable(bool flag);
1111  virtual void local_setAtcGlobalModelEnable(bool flag);
1112 
1114  virtual void local_setPaperMapEnabled(bool enabled);
1115 
1117  virtual void local_setPaperMapLayerTimeout(double val);
1118 
1120  virtual void local_setPaperMapGroup(std::string group);
1121 
1125  virtual void local_setPaperMapIntersectionOverride(bool enabled);
1126 
1128  virtual void local_setLimitEntityTextures(const DtVector2<int>& resolution);
1129 
1131  virtual void local_setLimitTerrainTextures(const DtVector2<int>& resolution);
1132 
1134  virtual void local_setLimitEntityTexturesProportional(bool val);
1135 
1137  virtual void local_excludeModelDefFromTextureLimits(const std::string& modelDef);
1138 
1140  virtual void local_setApplyShadowToAmbientLighting(bool val);
1141 
1143  virtual void local_setLimitEarthTerrainTextures(int resolution);
1144 
1146  virtual void local_setLimitEarthSplattingTextures(int resolution);
1147 
1149  virtual void local_setLimitEarthVegetationTextures(int resolution);
1150 
1152  virtual void local_setComponentVisualizationMode(int val);
1153 
1154  protected:
1155 
1164 
1198  unsigned int myOceanQuality;
1199  unsigned int myOceanSpectralModel;
1200 
1202 
1206 
1210 
1216 
1235 
1254  double myGamma;
1256 
1258 
1272  std::string myPaperMapGroup;
1274 
1276  float myHbaoBias;
1281 
1284 
1287 
1290 
1292  std::unordered_set<std::string> myModelDefsExcludedFromTextureLimits;
1293 
1296 
1297  int myLimitEarthTerrainTextures = -1;
1298  int myLimitEarthSplattingTextures = -1;
1299  int myLimitEarthVegetationTextures = -1;
1300 
1302  };
1303 
1307  {
1308 
1309  public:
1310 
1312  static DtDeSharedStateCreator& instance(DtDe&);
1313 
1315  static void registerInstance(DtDe& de, DtDeSharedStateCreator*);
1316 
1318  virtual DtDeSharedState* create(DtDe& de);
1319 
1320  };
1321 
1322 }
DtColorValue class.
float myIndirectLodTransitionPercentage
Definition: DtDeSharedState.h:1228
bool myDofUseAutofocus
Definition: DtDeSharedState.h:1224
bool myPlanarReflectionsShowSpeedTrees
Definition: DtDeSharedState.h:1201
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
DtColorValue myFailedIntersectorColor
Definition: DtDeSharedState.h:1213
double myHdrOutputScale
Definition: DtDeSharedState.h:1257
double myStreakRotationOffset
Definition: DtDeSharedState.h:1252
float myHbaoRadius
Definition: DtDeSharedState.h:1275
std::string myPaperMapGroup
Definition: DtDeSharedState.h:1272
bool myAtcEnableDither
Definition: DtDeSharedState.h:1205
bool myEnableHdrStreaks
Definition: DtDeSharedState.h:1233
bool autoSave() const
Definition: DtDeSharedState.h:792
bool myEnableHdrLensFlare
Definition: DtDeSharedState.h:1234
The model definition manager is responsible to managing all of the model definitions the IG knows abo...
Definition: DtModelDefinitionManager.h:78
DtDeSharedStateProctor * myIgSharedStateProctor
Definition: DtDeSharedState.h:1157
float myTerrainMagnificationScaleFactor
Definition: DtDeSharedState.h:1169
2 dimensional vector
float myLightingAmbientScale
Definition: DtDeSharedState.h:1209
bool myShadowsEnabledOnOcean
Definition: DtDeSharedState.h:1177
DtLightPointManager * myLightPointManger
Definition: DtDeSharedState.h:1162
bool myEnableHdrExposureCorrelation
Definition: DtDeSharedState.h:1231
bool myTerrainScalingEnabled
Definition: DtDeSharedState.h:1166
int myDiGuyInstancedLod
Definition: DtDeSharedState.h:1218
Month
Definition: DtDeTimeManager.h:32
A Record of an IG instance.
Definition: DtDeRecord.h:24
double myWaterOnScreenSize
Definition: DtDeSharedState.h:1227
float myLightingEmissionScale
Definition: DtDeSharedState.h:1207
DtSharedSettingsManager * mySharedSettingsManager
Definition: DtDeSharedState.h:1163
voidpf void uLong size
Definition: ioapi.h:39
double myBloomScale
Definition: DtDeSharedState.h:1248
DtDeTimeManager * myTimeManager
Definition: DtDeSharedState.h:1161
int myComponentVizualizationMode
Definition: DtDeSharedState.h:1191
DtVector2< int > myLimitEntityTexturesResolution
only mip maps at or below this res will be loaded for entities
Definition: DtDeSharedState.h:1283
float myMetaflightPagingDistScale
Definition: DtDeSharedState.h:1262
float myGlobalAmbientValue
Definition: DtDeSharedState.h:1170
Contains makVrv::DtDe class.
bool myAdaptiveTickRateEnabled
Definition: DtDeSharedState.h:1267
bool myWaveSprayEffectEnabled
Definition: DtDeSharedState.h:1184
bool mySimulationTimeIsPaused
Definition: DtDeSharedState.h:1259
bool myTidalStreamWakesEnabled
Definition: DtDeSharedState.h:1186
DtModelSetRealizationManager is responsible for tracking which model sets are currently realized...
Definition: DtModelSetRealizationManager.h:37
bool myUseGlobalAmbient
Definition: DtDeSharedState.h:1171
double myAutoExposureMinDiff
Definition: DtDeSharedState.h:1243
bool myDiGuyVisualizeInstancing
Definition: DtDeSharedState.h:1219
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
double myStreakIntensityScale
Definition: DtDeSharedState.h:1249
float myPlanViewGeocentricOccludedTransparency
Definition: DtDeSharedState.h:1175
bool myEnableHdrBloom
Definition: DtDeSharedState.h:1232
float myHbaoExponent
Definition: DtDeSharedState.h:1277
bool myLimitEntityTexturesProportional
proportionally limit textures for entities (default is true)
Definition: DtDeSharedState.h:1286
int myOceanHeightMapTextureSize
Definition: DtDeSharedState.h:1195
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:42
double myStreaksLenScale
Definition: DtDeSharedState.h:1251
double myAutoExposureClampMin
Definition: DtDeSharedState.h:1245
float myTerrainMagnificationHighLodAngle
Definition: DtDeSharedState.h:1168
bool myDiGuyMultiThreadUpdate
Definition: DtDeSharedState.h:1223
bool myOceanPlanarReflectionsEnabled
Definition: DtDeSharedState.h:1179
bool myEnableHdrAutoExposure
Definition: DtDeSharedState.h:1230
bool myEnableHdr
Definition: DtDeSharedState.h:1229
bool myApplyShadowToAmbientLighting
Whether to apply shadows to the ambient lighting (see DtOsgLightingComponent)
Definition: DtDeSharedState.h:1295
bool myAtcGlobalTerrainEnable
Definition: DtDeSharedState.h:1204
The time manager is responsible for maintaining the currenting date and time of the scene...
Definition: DtDeTimeManager.h:28
double myRegenerateHeightMapPercThreshold
Definition: DtDeSharedState.h:1193
bool myOceanPlanarReflectionsSpecifyFarClip
Definition: DtDeSharedState.h:1181
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
float myGlobalDiffuseValue
Definition: DtDeSharedState.h:1172
unsigned int myOceanQuality
Definition: DtDeSharedState.h:1198
double myAutoExposureClampMax
Definition: DtDeSharedState.h:1246
The DtDeSharedState represents all the data that is shared between the master and its slaves...
Definition: DtDeSharedState.h:47
bool myArtPartSmoothingEnabled
Definition: DtDeSharedState.h:1268
double myAutoExposurePostScale
Definition: DtDeSharedState.h:1247
float myDiGuyMaxMotionUpdateDistance
Definition: DtDeSharedState.h:1222
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtColorValue myOddSegmentIntersectorColor
Definition: DtDeSharedState.h:1214
std::unordered_set< std::string > myModelDefsExcludedFromTextureLimits
models excluded from entity texture limits
Definition: DtDeSharedState.h:1292
int myPlanarReflectionTextureWidth
Definition: DtDeSharedState.h:1196
float myDiGuyMaxDrawDistance
Definition: DtDeSharedState.h:1221
float myInstancingCullDistance
Definition: DtDeSharedState.h:1260
bool myColorizeDrawablesEnabled
Definition: DtDeSharedState.h:1190
bool myIntersectorDrawEnabled
Definition: DtDeSharedState.h:1211
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
double myDofFocalDepth
Definition: DtDeSharedState.h:1225
double myLensFlareScale
Definition: DtDeSharedState.h:1253
float myHbaoSmallScalar
Definition: DtDeSharedState.h:1278
double myOceanHeightMapResolution
Definition: DtDeSharedState.h:1187
bool myClearTrackHistoryOnTerrainScaleChanged
Definition: DtDeSharedState.h:1174
bool myAutoSave
Definition: DtDeSharedState.h:1189
double myAutoExposureRateScale
Definition: DtDeSharedState.h:1241
double myDynamicLightScale
Definition: DtDeSharedState.h:1237
bool myShadowsEnabled
Definition: DtDeSharedState.h:1176
double myPaperMapLayerTimeout
Definition: DtDeSharedState.h:1271
double myDofFocalRange
Definition: DtDeSharedState.h:1226
bool myWheelRotationEnabled
Definition: DtDeSharedState.h:1266
Creator class for DtDeSharedState.
Definition: DtDeSharedState.h:1306
float myIntersectorDrawnDuration
Definition: DtDeSharedState.h:1212
double myOceanPlanarReflectionsFarClip
Definition: DtDeSharedState.h:1182
float myOceanPlanarReflectionsLODScale
Definition: DtDeSharedState.h:1180
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
bool myDiGuyInstancingEnabled
Definition: DtDeSharedState.h:1217
double myShininessScale
Definition: DtDeSharedState.h:1240
int myHbaoDepthClampMode
Definition: DtDeSharedState.h:1280
double myAutoExposureMaxDiff
Definition: DtDeSharedState.h:1244
bool myCrepuscularRaysEnabled
Definition: DtDeSharedState.h:1183
float myIndirectDistScale
Definition: DtDeSharedState.h:1264
double mySpecularScale
Definition: DtDeSharedState.h:1239
bool myMetaflightPagingDistScaleEnabled
Definition: DtDeSharedState.h:1263
Base class to provide boost signal/slot management.
bool myPaperMapIntersectionOverride
Definition: DtDeSharedState.h:1273
DtSignalConnectionManager myConnections
Definition: DtDeSharedState.h:1301
const char int mode
Definition: ioapi.h:38
IGI Client is responsible for delivering IGI messages to other remote managers. IGI Client is the abs...
Definition: DtMessageClient.h:27
The DtDeSharedStateProctor handles the serialization of data to messages for transport from master to...
Definition: DtDeSharedStateProctor.h:32
unsigned int myOceanSpectralModel
Definition: DtDeSharedState.h:1199
double myAutoExposurePreScale
Definition: DtDeSharedState.h:1242
bool myPaperMapEnabled
Definition: DtDeSharedState.h:1270
void setAutoSave(bool b)
Definition: DtDeSharedState.h:787
bool myAtcGlobalModelEnable
Definition: DtDeSharedState.h:1203
DtVector2< int > myLimitTerrainTexturesResolution
only mip maps at or below this res will be loaded for terrain
Definition: DtDeSharedState.h:1289
bool myPerPixelLightingEnabled
Definition: DtDeSharedState.h:1178
float myLightingDiffuseScale
Definition: DtDeSharedState.h:1208
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
DtDe & myDe
Definition: DtDeSharedState.h:1156
double myTerrainScaleFactor
Definition: DtDeSharedState.h:1167
int myNumStreaks
Definition: DtDeSharedState.h:1250
DtModelSetId
Definition: DtModelSetEnums.h:19
bool myInstancingCullDistEnabled
Definition: DtDeSharedState.h:1261
DtModelSetRealizationManager * myModelSetRealizationManager
Definition: DtDeSharedState.h:1159
Contains makVrv::DtDeTimeManager class.
bool myWireframeMode
Definition: DtDeSharedState.h:1165
float myHbaoLargeScalar
Definition: DtDeSharedState.h:1279
double myEmissiveTextureScale
Definition: DtDeSharedState.h:1238
DtModelDefinitionManager * myModelDefinitionManager
Definition: DtDeSharedState.h:1158
Template for Color values in [0,1] range.
Definition: DtColorValue.h:20
DtCoordinateSystem * myCoordinateSystem
Definition: DtDeSharedState.h:1160
double myGamma
Definition: DtDeSharedState.h:1254
DtColorValue myEvenSegmentIntersectorColor
Definition: DtDeSharedState.h:1215
bool myOmitCloudInCubeMap
Definition: DtDeSharedState.h:1194
double myStaticOceanLodRange
Definition: DtDeSharedState.h:1188
double myRegenerateCubeMapThreshold
Definition: DtDeSharedState.h:1192
int myHdrResolutionScale
Definition: DtDeSharedState.h:1255
int myPlanarReflectionTextureHeight
Definition: DtDeSharedState.h:1197
bool myIndirectDistScaleEnabled
Definition: DtDeSharedState.h:1265
double myLightPointScale
Definition: DtDeSharedState.h:1236
float myHbaoBias
Definition: DtDeSharedState.h:1276
bool myDiGuyTextureVariationsEnabled
Definition: DtDeSharedState.h:1220
float myArtPartSmoothingPeriod
Definition: DtDeSharedState.h:1269
bool myUseGlobalDiffuse
Definition: DtDeSharedState.h:1173
DtLightPointManager core base class for DtOsgLightPointManger (which does most of the work for light ...
Definition: DtLightPointManager.h:28
bool myRotorWashDecalEnabled
Definition: DtDeSharedState.h:1185

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)