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) 2023 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  enum class DtModelSetId;
32 
46  {
47 
48  public:
49 
51  friend class DtDeSharedStateCreator;
52 
55  friend class DtDeSharedStateProctor;
56 
58  virtual ~DtDeSharedState();
59 
61  DtDeSharedState() = delete;
62 
64  DtDeSharedState(const DtDeSharedState&) = delete;
65 
67  DtDeSharedState& operator=(const DtDeSharedState&) = delete;
68 
70  virtual void initialize();
71 
73 
74 
77  virtual const DtModelDefinitionManager& modelDefinitionManager() const;
78  virtual DtModelDefinitionManager& modelDefinitionManager();
79 
82  virtual const DtModelSetRealizationManager& modelSetRealizationManager() const;
83  virtual DtModelSetRealizationManager& modelSetRealizationManager();
84 
87  virtual void setVisualizeModelSet( DtModelSetId modelset, bool visualize);
88 
91  virtual void addModelDefinition(const DtModelDefinition& definition);
92 
95  virtual void setModelDefinitionManager(
96  const DtModelDefinitionManager& definition);
97 
101  virtual void renameModelDefinition(const DtModelDefinition& old,
102  const DtModelDefinition& newDef);
103 
106  virtual void destroyModelDefinition(const DtModelDefinition& definition);
107 
109  virtual void setModelInstancingEnabled(bool);
110 
112  virtual void clearModelInstancingCache();
113 
115 
117 
118  virtual void setCoordinateSystem(const std::string& coordinateSystemName,
120  const std::string& coordinateSystemParameters);
121 
123  const DtCoordinateSystem& coordinateSystem() const;
125  DtCoordinateSystem& coordinateSystem();
126 
127 
129 
131 
132 
148  virtual void setDateAndTime(int year, DtDeTimeManager::Month month,
149  int dayOfMonth, int hour, int minutes, double seconds);
150 
153  virtual void setUseGlobalTimeZone(bool);
154 
157  virtual void setTimeScale(double timeScale);
158 
160  const DtDeTimeManager& timeManager() const;
161 
164  DtDeTimeManager& timeManager();
165 
167 
169 
170 
172  virtual void reloadShader();
173 
175  virtual void setWireframeMode(bool state);
176  virtual bool wireframeMode() const;
177 
179  virtual bool terrainScalingEnabled() const;
180  virtual void setTerrainScalingEnabled(bool enabled);
181 
182  virtual double terrainScaleFactor() const;
183  virtual void setTerrainScaleFactor(double scaleFactor);
184 
185  virtual bool clearTrackHistoryOnTerrainScaleChanged() const;
186  virtual void setClearTrackHistoryOnTerrainScaleChanged(bool clear);
187 
190  virtual float globalAmbientValue() const;
191  virtual void setGlobalAmbientValue(float globalAmbientValue);
192 
193  virtual bool useGlobalAmbient() const;
194  virtual void setUseGlobalAmbient(bool useGlobalAmbient);
195 
198  virtual float globalDiffuseValue() const;
199  virtual void setGlobalDiffuseValue(float globalDiffuseValue);
200 
201  virtual bool useGlobalDiffuse() const;
202  virtual void setUseGlobalDiffuse(bool useGlobalDiffuse);
203 
205  virtual void setPlanViewGeocentricOccludedTransparency(float f);
206  virtual float planViewGeocentricOccludedTransparency() const;
207 
208  virtual void setPerformanceOverlayState(unsigned int state);
209  virtual unsigned int performanceOverlayState() const;
210 
211  virtual void setProfilerOverlayOn(bool enabled);
212  virtual bool profilerOverlayEnabled() const;
213 
214  virtual void setImguiOverlayOn(bool enabled);
215  virtual bool imguiOverlayOn() const;
216 
217  virtual bool perPixelLightingEnabled() const;
218  virtual void setPerPixelLightingEnabled(bool setting);
219 
220  virtual bool crepuscularRaysEnabled() const;
221  virtual void setCrepuscularRaysEnabled(bool setting);
222 
224  virtual bool dofUseAutofocus() const;
225  virtual void setDofUseAutofocus(bool useAutofocus);
226 
228  virtual double dofFocalDepth() const;
229  virtual void setDofFocalDepth(double focalDepth);
230 
232  virtual double dofFocalRange() const;
233  virtual void setDofFocalRange(double focalRange);
234 
235  // size of the water on screen effect(Rain Splash/Ocean Spray/Wave Splash) in percentage, default is 100(%)
236  virtual double waterOnScreenSize() const;
237  virtual void setWaterOnScreenSize(double size);
238 
241  virtual float hbaoRadius() const;
242  virtual void setHbaoRadius(float value);
243 
245  virtual float hbaoBias() const;
246  virtual void setHbaoBias(float value);
247 
249  virtual float hbaoExponent() const;
250  virtual void setHbaoExponent(float value);
251 
253  virtual float hbaoSmallScalar() const;
254  virtual void setHbaoSmallScalar(float value);
255 
257  virtual float hbaoLargeScalar() const;
258  virtual void setHbaoLargeScalar(float value);
259 
262  virtual int hbaoDepthClampMode() const;
263  virtual void setHbaoDepthClampMode(int mode);
264 
265 
269  virtual float indirectLodTransitionPercentage() const;
270  virtual void setIndirectLodTransitionPercentage(float val);
271 
272  virtual int componentVisualizationMode() const;
273  virtual void setComponentVisualizationMode(int value);
274 
276  virtual bool colorizePerDrawableEnabled() const;
277  virtual void setColorizePerDrawableEnabled(bool flag);
278 
280  virtual bool atcGlobalModelEnable() const;
281  virtual void setAtcGlobalModelEnable(bool flag);
282 
284  virtual bool atcGlobalTerrainEnable() const;
285  virtual void setAtcGlobalTerrainEnable(bool flag);
286 
288  virtual bool atcEnableDither() const;
289  virtual void setAtcEnableDither(bool flag);
290 
291  virtual double regenerateCubeMapThreshold() const;
292  virtual void setRegenerateCubeMapThreshold(double threshold);
293 
294  virtual double regenerateHeightMapPercThreshold() const;
295  virtual void setRegenerateHeightMapPercThreshold(double threshold);
296 
297  virtual bool omitCloudInCubeMap() const;
298  virtual void setOmitCloudInCubeMap(bool omit);
299 
301  virtual void setShadowsEnabled(bool shadowMode);
303  virtual bool shadowsEnabled() const;
305 
307  virtual void setApplyShadowToAmbientLighting(bool applyShadowToAmbient);
309  virtual bool applyShadowToAmbientLighting() const;
311 
313  virtual void setShadowsEnabledOnOcean(bool shadowMode);
315  virtual bool shadowsEnabledOnOcean() const;
317 
319  virtual void setSimulationTimeIsPaused(bool setting);
321  virtual bool simulationTimeIsPaused() const;
323 
325  virtual void setWheelRotationEnabled(bool setting);
327  virtual bool wheelRotationEnabled() const;
329 
331  virtual void setAdaptiveTickRateEnabled(bool setting);
333  virtual bool adaptiveTickRateEnabled() const;
335 
337  virtual void setPaperMapEnabled(bool setting);
340  virtual bool paperMapEnabled() const;
342 
344  virtual void setPaperMapLayerTimeout(double val);
346  virtual double paperMapLayerTimeout() const;
348 
350  virtual void setPaperMapGroup(std::string group);
352  virtual std::string paperMapGroup() const;
354 
356  virtual bool paperMapIntersectionOverride() const;
359  virtual void setPaperMapIntersectionOverride(bool setting);
361 
362  virtual void loadRenderSettings(const std::string& filepath);
363  virtual void saveRenderSettings(const std::string& filepath);
364  virtual void loadDefaultRenderSettings(bool useOnlyFactorySettings);
365  virtual void saveDefaultRenderSettings();
366  virtual void updateRenderState();
367 
369 
371 
372 
374  virtual bool artPartSmoothingEnabled() const;
375 
377  virtual void setArtPartSmoothingEnabled(bool setting);
378 
381  virtual float artPartSmoothingPeriod() const;
382 
385  virtual void setArtPartSmoothingPeriod(float period);
386 
387  virtual void loadEntityDisplaySettings(const std::string& filepath);
388  virtual void saveEntityDisplaySettings(const std::string& filepath);
389  virtual void loadDefaultEntityDisplaySettings(bool useOnlyFactorySettings);
390  virtual void saveDefaultEntityDisplaySettings();
391  virtual void updateEntityDisplayState();
393 
395 
396 
398  virtual void setDdsFlip(bool state);
399 
401  virtual bool ddsFlip() const;
402 
403  virtual void loadLoaderSettings(const std::string& filepath);
404  virtual void saveLoaderSettings(const std::string& filepath);
405  virtual void loadDefaultLoaderSettings(bool useOnlyFactorySettings);
406  virtual void saveDefaultLoaderSettings();
407  virtual void updateLoaderState();
408 
410 
412 
413 
415  virtual void setAccelerationCachingEnabled(bool enabled);
416 
418  virtual bool accelerationCachingEnabled() const;
419 
421  virtual void clearAccelerationCache() const;
422 
424  virtual void setInstancingEnabled(bool enabled);
425 
427  virtual void setClearInstancesOnNewSceneEnabled(bool enabled);
428 
430  virtual bool instancingEnabled() const;
431 
433  virtual bool clearInstancesOnNewScene() const;
434 
436  virtual void clearInstancingCache();
437 
439  virtual void setCompressTextures(bool enabled);
440 
442  virtual bool compressTextures() const;
443 
444  virtual void loadCacheSettings(const std::string& filepath);
445  virtual void saveCacheSettings(const std::string& filepath);
446  virtual void loadDefaultCacheSettings(bool useOnlyFactorySettings);
447  virtual void saveDefaultCacheSettings();
448  virtual void updateCacheState();
449 
451 
453 
454 
455  virtual bool oceanPlanarReflectionsEnabled() const;
456  virtual void setOceanPlanarReflectionsEnabled(bool setting);
457 
458  virtual float oceanPlanarReflectionsLODScale() const;
459  virtual void setOceanPlanarReflectionsLODScale(float setting);
460 
461  virtual bool oceanPlanarReflectionsSpecifyFarClip() const;
462  virtual void setOceanPlanarReflectionsSpecifyFarClip(bool setting);
463 
464  virtual double oceanPlanarReflectionsFarClip() const;
465  virtual void setOceanPlanarReflectionsFarClip(double setting);
466 
467  virtual bool planarReflectionsShowSpeedTrees() const;
468  virtual void setPlanarReflectionsShowSpeedTrees(bool flag);
469 
470  virtual double staticOceanLodRange() const;
471  virtual void setStaticOceanLodRange(double range);
472 
473  virtual bool waveSprayEffectEnabled() const;
474  virtual void setWaveSprayEffectEnabled(bool setting);
475 
476  virtual bool rotorWashDecalEnabled() const;
477  virtual void setRotorWashDecalEnabled(bool setting);
478 
479  virtual double oceanHeightMapResolution() const;
480  virtual void setOceanHeightMapResolution(double setting);
481 
482  virtual void setOceanHeightMapTextureSize(int setting);
483  virtual int oceanHeightMapTextureSize() const;
484 
485 
489  virtual void setTidalStreamWakesEnabled(bool enabled);
490 
494  virtual bool tidalStreamWakesEnabled() const;
495 
496  virtual int planarReflectionTextureWidth() const;
497  virtual void setPlanarReflectionTextureWidth(int w);
498 
499  virtual int planarReflectionTextureHeight() const;
500  virtual void setPlanarReflectionTextureHeight(int h);
501 
502  virtual unsigned int oceanQuality() const;
503  virtual void setOceanQuality(unsigned int quality);
504 
505  virtual unsigned int oceanSpectralModel() const;
506  virtual void setOceanSpectralModel(unsigned int model);
507 
508  virtual void loadOceanRenderSettings(const std::string& filepath);
509  virtual void saveOceanRenderSettings(const std::string& filepath);
510  virtual void loadDefaultOceanRenderSettings(bool useOnlyFactorySettings);
511  virtual void saveDefaultOceanRenderSettings();
512  virtual void updateOceanRenderState();
514 
516  virtual void setTerrainMagnificationScaleFactor(float scale);
517  virtual float terrainMagnificationScaleFactor() const;
518 
520  virtual void setTerrainMagnificationHighLodAngle(float radians);
521  virtual float terrainMagnificationHighLodAngle() const;
522  virtual void setMetaflightPagingDistScale(float dist);
523  virtual float metaflightPagingDistScale() const;
524  virtual void setMetaflightPagingDistScaleEnabled(bool enabled);
525  virtual bool metaflightPagingDistScaleEnabled() const;
526  virtual void setIndirectDistScale(float scale);
527  virtual float indirectDistScale() const;
528  virtual void setIndirectDistScaleEnabled(bool enabled);
529  virtual bool indirectDistScaleEnabled() const;
530 
532 
533 
534  virtual float lightingEmissionScale() const;
535  virtual void setLightingEmissionScale(float setting);
536 
537  virtual float lightingDiffuseScale() const;
538  virtual void setLightingDiffuseScale(float setting);
539 
540  virtual float lightingAmbientScale() const;
541  virtual void setLightingAmbientScale(float setting);
542 
543  virtual void loadLightingRenderSettings(const std::string& filepath);
544  virtual void saveLightingRenderSettings(const std::string& filepath);
545  virtual void loadDefaultLightingRenderSettings(bool useOnlyFactorySettings);
546  virtual void saveDefaultLightingRenderSettings();
547  virtual void updateLightingRenderState();
549 
550 
552 
553 
554  virtual bool intersectorDrawEnabled() const;
555  virtual void setIntersectorDrawEnabled(bool setting);
556 
557  virtual float intersectorDrawnDuration() const;
558  virtual void setIntersectorDrawnDuration(float setting);
559 
560  virtual const DtColorValue& failedIntersectorColor() const;
561  virtual void setFailedIntersectorColor(const DtColorValue& setting);
562 
563  virtual const DtColorValue& oddSegmentIntersectorColor() const;
564  virtual void setOddSegmentIntersectorColor(const DtColorValue& setting);
565 
566  virtual const DtColorValue& evenSegmentIntersectorColor() const;
567  virtual void setEvenSegmentIntersectorColor(const DtColorValue& setting);
568 
569  virtual void loadIntersectorSettings(const std::string& filepath);
570  virtual void saveIntersectorSettings(const std::string& filepath);
571  virtual void loadDefaultIntersectorSettings(bool useOnlyFactorySettings);
572  virtual void saveDefaultIntersectorSettings();
573  virtual void updateIntersectorState();
575 
577 
578 
579  virtual const bool diGuyInstancingEnabled() const;
580  virtual void setDiGuyInstancingEnabled(bool enabled);
581 
582  virtual const int diGuyInstancedLod() const;
583  virtual void setDiGuyInstancedLod(int lod);
584 
585  virtual const bool diGuyVisualizeInstancing() const;
586  virtual void setDiGuyVisualizeInstancing(bool enabled);
587 
588  virtual const bool diGuyTextureVariationsEnabled() const;
589  virtual void setDiGuyTextureVariationsEnabled(bool enabled);
590 
591  virtual const float diGuyMaxDrawDistance() const;
592  virtual void setDiGuyMaxDrawDistance(float distance);
593 
594  virtual const float diGuyMaxMotionUpdateDistance() const;
595  virtual void setDiGuyMaxMotionUpdateDistance(float distance);
596 
597  virtual const bool diGuyMultiThreadUpdate() const;
598  virtual void setDiGuyMultiThreadUpdate(bool enabled);
599 
600  virtual void loadDiGuySettings(const std::string& filepath);
601  virtual void saveDiGuySettings(const std::string& filepath);
602  virtual void loadDefaultDiGuySettings(bool useOnlyFactorySettings);
603  virtual void saveDefaultDiGuySettings();
604  virtual void updateDiGuyState();
605 
607 
609 
610 
612  virtual bool enableHdr() const;
613  virtual void setEnableHdr(bool enabled);
614 
615  virtual bool enableHdrAutoExposure() const;
616  virtual void setEnableHdrAutoExposure(bool enabled);
617 
618  virtual bool enableHdrExposureCorrelation() const;
619  virtual void setEnableHdrExposureCorrelation(bool enabled);
620 
621  virtual bool enableHdrBloom() const;
622  virtual void setEnableHdrBloom(bool enabled);
623 
624  virtual bool enableHdrStreaks() const;
625  virtual void setEnableHdrStreaks(bool enabled);
626 
627  virtual bool enableHdrLensFlare() const;
628  virtual void setEnableHdrLensFlare(bool enabled);
629 
630  virtual void setLightPointScale(double val);
631  virtual double lightPointScale() const;
632 
633  virtual void setDynamicLightScale(double val);
634  virtual double dynamicLightScale() const;
635 
636  virtual void setEmissiveTextureScale(double val);
637  virtual double emissiveTextureScale() const;
638 
639  virtual void setSpecularScale(double val);
640  virtual double specularScale() const;
641 
642  virtual void setShininessScale(double val);
643  virtual double shininessScale() const;
644 
645  virtual void setAutoExposureRateScale(double val);
646  virtual double autoExposureRateScale() const;
647 
648  virtual void setAutoExposurePreScale(double val);
649  virtual double autoExposurePreScale() const;
650 
651  virtual void setAutoExposureMinDiff(double val);
652  virtual double autoExposureMinDiff() const;
653 
654  virtual void setAutoExposureMaxDiff(double val);
655  virtual double autoExposureMaxDiff() const;
656 
657  virtual void setAutoExposureClampMin(double val);
658  virtual double autoExposureClampMin() const;
659 
660  virtual void setAutoExposureClampMax(double val);
661  virtual double autoExposureClampMax() const;
662 
663  virtual void setAutoExposurePostScale(double val);
664  virtual double autoExposurePostScale() const;
665 
666  virtual void setBloomScale(double val);
667  virtual double bloomScale() const;
668 
669  virtual void setStreakIntensityScale(double val);
670  virtual double streakIntensityScale() const;
671 
672  virtual void setNumStreaks(int val);
673  virtual int numStreaks() const;
674 
675  virtual void setStreaksLenScale(double val);
676  virtual double streaksLenScale() const;
677 
678  virtual void setStreakRotationOffset(double val);
679  virtual double streakRotationOffset() const;
680 
681  virtual void setLensFlareScale(double val);
682  virtual double lensFlareScale() const;
683 
684  virtual void setGamma(double val);
685  virtual double gamma() const;
686 
687  virtual void setHdrResolutionScale(int val);
688  virtual int hdrResolutionScale() const;
689 
690  virtual void setLightPointGroupColor(const std::string& groupName, DtColorValue color, bool createGroupIfNonexistent);
691  virtual DtColorValue lightPointGroupColor(const std::string& groupName);
692 
693  //this is not saved out but is a part of how the HDR post processor works
694  // scale for the tonemapping, shared so slaves match master intensity
695  virtual void setHdrOutputScale(double val);
696  virtual double hdrOutputScale() const;
697 
698  virtual void loadPostProcessorSettings(const std::string& filepath);
699  virtual void savePostProcessorSettings(const std::string& filepath);
700  virtual void loadDefaultPostProcessorSettings(bool useOnlyFactorySettings);
701  virtual void saveDefaultPostProcessorSettings();
702  virtual void updatePostProcessorState();
704 
706  virtual void setLimitEntityTextures(const DtVector2<int>& resolution);
709  virtual const DtVector2<int>& limitEntityTextures(void) const;
711 
712 
714  virtual void excludeFromTextureLimits(const std::string& modelDef);
716  virtual const std::unordered_set<std::string> modelDefsExcludedFromTextureLimits(void);
718 
720  virtual void setLimitEntityTexturesProportional(bool proportional);
724  virtual bool limitEntityTexturesProportional(void) const;
726 
728  virtual void setLimitTerrainTextures(const DtVector2<int>& resolution);
731  virtual const DtVector2<int>& limitTerrainTextures() const;
733 
734 
736  virtual void setLimitEarthTerrainTextures(int resolution);
739  virtual int limitEarthTerrainTextures() const;
741 
742 
744  virtual void setLimitEarthSplattingTextures(int resolution);
747  virtual int limitEarthSplattingTextures() const;
749 
751  virtual void setLimitEarthVegetationTextures(int resolution);
754  virtual int limitEarthVegetationTextures() const;
756 
759  virtual void initializeSharedChangeManager();
760 
762 
763 
766  virtual void synchronizeSlave(DtDeRecord* igRecord);
767 
769 
770  void setAutoSave(bool b)
771  {
772  myAutoSave = b;
773  }
774 
775  bool autoSave() const
776  {
777  return myAutoSave;
778  }
779 
780  protected:
781 
784 
786  virtual void sendModelDefinitionsToSlave(DtMessageClient* messageClient);
787 
790  virtual void sendModelSetConfigurationToSlave(
791  DtMessageClient* messageClient);
792 
794  virtual void sendLightPointGroupsToSlave(DtMessageClient* messageClient);
795 
797  virtual void local_setLightPointGroupColor(const std::string& groupName, const DtColorValue& color, bool createGroupIfNonexistent);
798 
800 
801 
803  virtual void local_setModelDefinitionManager(const DtModelDefinitionManager& definition);
804 
806  virtual void local_addModelDefinition(const DtModelDefinition& definition);
807 
809  virtual void local_destroyModelDefinition(const std::string& definition);
811 
813  virtual void local_setModelInstancingEnabled(bool);
814 
816  virtual void local_clearModelInstancingCache();
817 
819  virtual void local_reloadShader();
820 
822  virtual void local_setWireframeMode(bool mode);
823 
825  virtual void local_setTerrainScalingEnabled(bool enabled);
826 
828  virtual void local_setTerrainScaleFactor(double scaleFactor);
829 
831  virtual void local_setGlobalAmbientValue(float globalAmbientValue);
832 
834  virtual void local_setUseGlobalAmbient(bool useGlobalAmbient);
835 
837  virtual void local_setGlobalDiffuseValue(double globalDiffuseValue);
838 
840  virtual void local_setUseGlobalDiffuse(bool useGlobalDiffuse);
841 
843  virtual void local_setClearTrackHistoryOnTerrainScaleChanged(bool clear);
844 
846  virtual void local_setPlanViewGeocentricOccludedTransparency(float alpha);
847 
849  virtual void local_setShadowsEnabled(bool enable);
850 
852  virtual void local_setShadowsEnabledOnOcean(bool enable);
853 
855  virtual void local_ddsFlipState(bool flip);
856 
858  virtual void local_setVisualizeModelSet(DtModelSetId modelSet, bool visualize);
859 
861  void local_setCoordinateSystem(const std::string& coordinateSystemName,
862  const std::string& coordinateSystemParameters);
863 
865  virtual void local_setPerPixelLightingEnabled(bool mode);
866 
868  virtual void local_setOceanPlanarReflectionsEnabled(bool mode);
869 
871  virtual void local_setOceanPlanarReflectionsLODScale(float val);
872 
874  virtual void local_setOceanPlanarReflectionsSpecifyFarClip(bool mode);
875 
877  virtual void local_setOceanPlanarReflectionsFarClip(double val);
878 
880  virtual void local_setPlanarReflectionsShowSpeedTrees(bool flag);
881 
882  virtual void local_setStaticOceanLodRange(double range);
883 
885  virtual void local_setCrepuscularRaysEnabled(bool mode);
886 
888  virtual void local_setColorizePerDrawableEnabled(bool mode);
889 
891  virtual void local_setWaveSprayEffectEnabled(bool mode);
892 
894  virtual void local_setRotorWashDecalEnabled(bool mode);
895 
897  virtual void local_setOceanHeightMapResolution(double resolution);
898 
900 
901  void local_setDateAndTime(int year, DtDeTimeManager::Month month, int dayOfMonth,
902  int hour, int minutes, double seconds);
903  void local_setTimeScale(double timeScale);
904  void local_setUseGlobalTimeZone(bool);
906 
909  virtual void slot_dateChanged();
910 
912 
913 
915  virtual void local_setAccelerationCachingEnabled(bool enabled);
916 
918  virtual void local_clearAccelerationCache();
919 
921  virtual void local_setInstancingEnabled(bool enabled);
922 
924  virtual void local_setClearInstancesOnNewScene(bool enabled);
925 
927  virtual void local_clearInstancingCache();
928 
930  virtual void local_setCompressTextures(bool enabled);
931 
933  virtual void local_setTidalStreamWakesEnabled(bool enabled);
935 
937  virtual void local_setRegenerateCubeMapThreshold(double threshold);
938 
940  virtual void local_setRegenerateHeightMapPercThreshold(double threshold);
941 
943  virtual void local_setOmitCloudInCubeMap(bool enabled);
944 
946  virtual void local_setOceanHeightMapTextureSize(int val);
947 
948  virtual void local_setPlanarReflectionTextureWidth(int w);
949 
950  virtual void local_setPlanarReflectionTextureHeight(int w);
951 
952  virtual void local_setOceanQuality(unsigned int setting);
953 
954  virtual void local_setOceanSpectralModel(unsigned int setting);
955 
957  virtual void local_setLightingEmissionScale(float val);
959  virtual void local_setLightingDiffuseScale(float val);
961  virtual void local_setLightingAmbientScale(float val);
962 
963 
964  virtual void local_setIntersectorDrawEnabled(bool setting);
965 
966  virtual void local_setIntersectorDrawnDuration(float setting);
967 
968  virtual void local_setFailedIntersectorColor(const DtColorValue& setting);
969 
970  virtual void local_setOddSegmentIntersectorColor(const DtColorValue& setting);
971 
972  virtual void local_setEvenSegmentIntersectorColor(const DtColorValue& setting);
973 
974 
975  virtual void local_setDiGuyInstancingEnabled(bool color);
976 
977  virtual void local_setDiGuyInstancedLod(int lod);
978 
979  virtual void local_setDiGuyVisualizeInstancing(bool enabled);
980 
981  virtual void local_setDiGuyTextureVariationsEnabled(bool enabled);
982 
983  virtual void local_setDiGuyMaxDrawDistance(float distance);
984 
985  virtual void local_setDiGuyMaxMotionUpdateDistance(float distance);
986 
987  virtual void local_setDiGuyMultiThreadUpdate(bool enabled);
988 
989  virtual void local_setTerrainMagnificationHighLodAngle(float radians);
990 
991  virtual void local_setTerrainMagnificationScaleFactor(float scale);
992 
993  virtual void local_setSimulationTimeIsPaused(bool val);
994 
996  virtual void local_setMetaflightPagingDistScale(float dist);
997 
999  virtual void local_setMetaflightPagingDistScaleEnabled(bool enabled);
1000 
1002  virtual void local_setIndirectDistScale(float scale);
1003 
1005  virtual void local_setIndirectDistScaleEnabled(bool enabled);
1006 
1008  virtual void local_setDofUseAutofocus(bool useAutofocus);
1009 
1011  virtual void local_setDofFocalDepth(double focalDepth);
1012 
1014  virtual void local_setDofFocalRange(double focalRange);
1015 
1016  // size of the water on screen effect(Rain Splash/Ocean Spray/Wave Splash) in percentage, default is 100(%)
1017  virtual void local_setWaterOnScreenSize(double size);
1018 
1021  virtual void local_setHbaoRadius(float value);
1023  virtual void local_setHbaoBias(float value);
1025  virtual void local_setHbaoExponent(float value);
1027  virtual void local_setHbaoSmallScalar(float value);
1029  virtual void local_setHbaoLargeScalar(float value);
1032  virtual void local_setHbaoDepthClampMode(int mode);
1033 
1037  virtual void local_setIndirectLodTransitionPercentage(float val);
1038 
1040  virtual void local_setWheelRotationEnabled(bool enabled);
1041 
1043  virtual void local_setAdaptiveTickRateEnabled(bool enabled);
1044 
1046  virtual void local_setArtPartSmoothingEnabled(bool setting);
1047 
1049  virtual void local_setArtPartSmoothingPeriod(float period);
1050 
1052  virtual void local_setEnableHdr(bool enabled);
1053  virtual void local_setEnableHdrAutoExposure(bool enabled);
1054  virtual void local_setEnableHdrExposureCorrelation(bool enabled);
1055  virtual void local_setEnableHdrBloom(bool enabled);
1056  virtual void local_setEnableHdrStreaks(bool enabled);
1057  virtual void local_setEnableHdrLensFlare(bool enabled);
1058 
1059 
1060  virtual void local_setLightPointScale(double val);
1061  virtual void local_setDynamicLightScale(double val);
1062  virtual void local_setEmissiveTextureScale(double val);
1063  virtual void local_setSpecularScale(double val);
1064  virtual void local_setShininessScale(double val);
1065  virtual void local_setAutoExposureRateScale(double val);
1066  virtual void local_setAutoExposurePreScale(double val);
1067  virtual void local_setAutoExposureMinDiff(double val);
1068  virtual void local_setAutoExposureMaxDiff(double val);
1069  virtual void local_setAutoExposureClampMin(double val);
1070  virtual void local_setAutoExposureClampMax(double val);
1071  virtual void local_setAutoExposurePostScale(double val);
1072  virtual void local_setBloomScale(double val);
1073  virtual void local_setStreakIntensityScale(double val);
1074  virtual void local_setNumStreaks(int val);
1075  virtual void local_setStreaksLenScale(double val);
1076  virtual void local_setStreakRotationOffset(double val);
1077  virtual void local_setLensFlareScale(double val);
1078  virtual void local_setGamma(double val);
1079  virtual void local_setHdrResolutionScale(int val);
1080 
1081  virtual void local_setHdrOutputScale(double val);
1082 
1083  virtual void local_setAtcEnableDither(bool flag);
1084  virtual void local_setAtcGlobalTerrainEnable(bool flag);
1085  virtual void local_setAtcGlobalModelEnable(bool flag);
1086 
1088  virtual void local_setPaperMapEnabled(bool enabled);
1089 
1091  virtual void local_setPaperMapLayerTimeout(double val);
1092 
1094  virtual void local_setPaperMapGroup(std::string group);
1095 
1099  virtual void local_setPaperMapIntersectionOverride(bool enabled);
1100 
1102  virtual void local_setLimitEntityTextures(const DtVector2<int>& resolution);
1103 
1105  virtual void local_setLimitTerrainTextures(const DtVector2<int>& resolution);
1106 
1108  virtual void local_setLimitEntityTexturesProportional(bool val);
1109 
1111  virtual void local_excludeModelDefFromTextureLimits(const std::string& modelDef);
1112 
1114  virtual void local_setApplyShadowToAmbientLighting(bool val);
1115 
1117  virtual void local_setLimitEarthTerrainTextures(int resolution);
1118 
1120  virtual void local_setLimitEarthSplattingTextures(int resolution);
1121 
1123  virtual void local_setLimitEarthVegetationTextures(int resolution);
1124 
1126  virtual void local_setComponentVisualizationMode(int val);
1127 
1128  protected:
1129 
1138 
1172  unsigned int myOceanQuality;
1173  unsigned int myOceanSpectralModel;
1174 
1176 
1180 
1184 
1190 
1209 
1228  double myGamma;
1230 
1232 
1246  std::string myPaperMapGroup;
1248 
1250  float myHbaoBias;
1255 
1258 
1261 
1264 
1266  std::unordered_set<std::string> myModelDefsExcludedFromTextureLimits;
1267 
1270 
1271  int myLimitEarthTerrainTextures = -1;
1272  int myLimitEarthSplattingTextures = -1;
1273  int myLimitEarthVegetationTextures = -1;
1274 
1276  };
1277 
1281  {
1282 
1283  public:
1284 
1286  static DtDeSharedStateCreator& instance(DtDe&);
1287 
1289  static void registerInstance(DtDe& de, DtDeSharedStateCreator*);
1290 
1292  virtual DtDeSharedState* create(DtDe& de);
1293 
1294  };
1295 
1296 }
DtColorValue class.
float myIndirectLodTransitionPercentage
Definition: DtDeSharedState.h:1202
bool myDofUseAutofocus
Definition: DtDeSharedState.h:1198
bool myPlanarReflectionsShowSpeedTrees
Definition: DtDeSharedState.h:1175
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:1187
double myHdrOutputScale
Definition: DtDeSharedState.h:1231
double myStreakRotationOffset
Definition: DtDeSharedState.h:1226
float myHbaoRadius
Definition: DtDeSharedState.h:1249
std::string myPaperMapGroup
Definition: DtDeSharedState.h:1246
bool myAtcEnableDither
Definition: DtDeSharedState.h:1179
bool myEnableHdrStreaks
Definition: DtDeSharedState.h:1207
bool autoSave() const
Definition: DtDeSharedState.h:775
bool myEnableHdrLensFlare
Definition: DtDeSharedState.h:1208
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:1131
float myTerrainMagnificationScaleFactor
Definition: DtDeSharedState.h:1143
2 dimensional vector
float myLightingAmbientScale
Definition: DtDeSharedState.h:1183
bool myShadowsEnabledOnOcean
Definition: DtDeSharedState.h:1151
DtLightPointManager * myLightPointManger
Definition: DtDeSharedState.h:1136
bool myEnableHdrExposureCorrelation
Definition: DtDeSharedState.h:1205
bool myTerrainScalingEnabled
Definition: DtDeSharedState.h:1140
int myDiGuyInstancedLod
Definition: DtDeSharedState.h:1192
Month
Definition: DtDeTimeManager.h:32
A Record of an IG instance.
Definition: DtDeRecord.h:24
double myWaterOnScreenSize
Definition: DtDeSharedState.h:1201
float myLightingEmissionScale
Definition: DtDeSharedState.h:1181
DtSharedSettingsManager * mySharedSettingsManager
Definition: DtDeSharedState.h:1137
voidpf void uLong size
Definition: ioapi.h:39
double myBloomScale
Definition: DtDeSharedState.h:1222
DtDeTimeManager * myTimeManager
Definition: DtDeSharedState.h:1135
int myComponentVizualizationMode
Definition: DtDeSharedState.h:1165
DtVector2< int > myLimitEntityTexturesResolution
only mip maps at or below this res will be loaded for entities
Definition: DtDeSharedState.h:1257
float myMetaflightPagingDistScale
Definition: DtDeSharedState.h:1236
float myGlobalAmbientValue
Definition: DtDeSharedState.h:1144
Contains makVrv::DtDe class.
bool myAdaptiveTickRateEnabled
Definition: DtDeSharedState.h:1241
bool myWaveSprayEffectEnabled
Definition: DtDeSharedState.h:1158
bool mySimulationTimeIsPaused
Definition: DtDeSharedState.h:1233
bool myTidalStreamWakesEnabled
Definition: DtDeSharedState.h:1160
DtModelSetRealizationManager is responsible for tracking which model sets are currently realized...
Definition: DtModelSetRealizationManager.h:37
bool myUseGlobalAmbient
Definition: DtDeSharedState.h:1145
double myAutoExposureMinDiff
Definition: DtDeSharedState.h:1217
bool myDiGuyVisualizeInstancing
Definition: DtDeSharedState.h:1193
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
double myStreakIntensityScale
Definition: DtDeSharedState.h:1223
float myPlanViewGeocentricOccludedTransparency
Definition: DtDeSharedState.h:1149
bool myEnableHdrBloom
Definition: DtDeSharedState.h:1206
float myHbaoExponent
Definition: DtDeSharedState.h:1251
bool myLimitEntityTexturesProportional
proportionally limit textures for entities (default is true)
Definition: DtDeSharedState.h:1260
int myOceanHeightMapTextureSize
Definition: DtDeSharedState.h:1169
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:1225
double myAutoExposureClampMin
Definition: DtDeSharedState.h:1219
float myTerrainMagnificationHighLodAngle
Definition: DtDeSharedState.h:1142
bool myDiGuyMultiThreadUpdate
Definition: DtDeSharedState.h:1197
bool myOceanPlanarReflectionsEnabled
Definition: DtDeSharedState.h:1153
bool myEnableHdrAutoExposure
Definition: DtDeSharedState.h:1204
bool myEnableHdr
Definition: DtDeSharedState.h:1203
bool myApplyShadowToAmbientLighting
Whether to apply shadows to the ambient lighting (see DtOsgLightingComponent)
Definition: DtDeSharedState.h:1269
bool myAtcGlobalTerrainEnable
Definition: DtDeSharedState.h:1178
The time manager is responsible for maintaining the currenting date and time of the scene...
Definition: DtDeTimeManager.h:28
double myRegenerateHeightMapPercThreshold
Definition: DtDeSharedState.h:1167
bool myOceanPlanarReflectionsSpecifyFarClip
Definition: DtDeSharedState.h:1155
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:1146
unsigned int myOceanQuality
Definition: DtDeSharedState.h:1172
double myAutoExposureClampMax
Definition: DtDeSharedState.h:1220
The DtDeSharedState represents all the data that is shared between the master and its slaves...
Definition: DtDeSharedState.h:45
bool myArtPartSmoothingEnabled
Definition: DtDeSharedState.h:1242
double myAutoExposurePostScale
Definition: DtDeSharedState.h:1221
float myDiGuyMaxMotionUpdateDistance
Definition: DtDeSharedState.h:1196
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtColorValue myOddSegmentIntersectorColor
Definition: DtDeSharedState.h:1188
std::unordered_set< std::string > myModelDefsExcludedFromTextureLimits
models excluded from entity texture limits
Definition: DtDeSharedState.h:1266
int myPlanarReflectionTextureWidth
Definition: DtDeSharedState.h:1170
float myDiGuyMaxDrawDistance
Definition: DtDeSharedState.h:1195
float myInstancingCullDistance
Definition: DtDeSharedState.h:1234
bool myColorizeDrawablesEnabled
Definition: DtDeSharedState.h:1164
bool myIntersectorDrawEnabled
Definition: DtDeSharedState.h:1185
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
double myDofFocalDepth
Definition: DtDeSharedState.h:1199
double myLensFlareScale
Definition: DtDeSharedState.h:1227
float myHbaoSmallScalar
Definition: DtDeSharedState.h:1252
double myOceanHeightMapResolution
Definition: DtDeSharedState.h:1161
bool myClearTrackHistoryOnTerrainScaleChanged
Definition: DtDeSharedState.h:1148
bool myAutoSave
Definition: DtDeSharedState.h:1163
double myAutoExposureRateScale
Definition: DtDeSharedState.h:1215
double myDynamicLightScale
Definition: DtDeSharedState.h:1211
bool myShadowsEnabled
Definition: DtDeSharedState.h:1150
double myPaperMapLayerTimeout
Definition: DtDeSharedState.h:1245
double myDofFocalRange
Definition: DtDeSharedState.h:1200
bool myWheelRotationEnabled
Definition: DtDeSharedState.h:1240
Creator class for DtDeSharedState.
Definition: DtDeSharedState.h:1280
float myIntersectorDrawnDuration
Definition: DtDeSharedState.h:1186
double myOceanPlanarReflectionsFarClip
Definition: DtDeSharedState.h:1156
float myOceanPlanarReflectionsLODScale
Definition: DtDeSharedState.h:1154
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
bool myDiGuyInstancingEnabled
Definition: DtDeSharedState.h:1191
double myShininessScale
Definition: DtDeSharedState.h:1214
int myHbaoDepthClampMode
Definition: DtDeSharedState.h:1254
double myAutoExposureMaxDiff
Definition: DtDeSharedState.h:1218
bool myCrepuscularRaysEnabled
Definition: DtDeSharedState.h:1157
float myIndirectDistScale
Definition: DtDeSharedState.h:1238
double mySpecularScale
Definition: DtDeSharedState.h:1213
bool myMetaflightPagingDistScaleEnabled
Definition: DtDeSharedState.h:1237
Base class to provide boost signal/slot management.
bool myPaperMapIntersectionOverride
Definition: DtDeSharedState.h:1247
DtSignalConnectionManager myConnections
Definition: DtDeSharedState.h:1275
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:1173
double myAutoExposurePreScale
Definition: DtDeSharedState.h:1216
bool myPaperMapEnabled
Definition: DtDeSharedState.h:1244
void setAutoSave(bool b)
Definition: DtDeSharedState.h:770
bool myAtcGlobalModelEnable
Definition: DtDeSharedState.h:1177
DtVector2< int > myLimitTerrainTexturesResolution
only mip maps at or below this res will be loaded for terrain
Definition: DtDeSharedState.h:1263
bool myPerPixelLightingEnabled
Definition: DtDeSharedState.h:1152
float myLightingDiffuseScale
Definition: DtDeSharedState.h:1182
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:72
DtDe & myDe
Definition: DtDeSharedState.h:1130
double myTerrainScaleFactor
Definition: DtDeSharedState.h:1141
int myNumStreaks
Definition: DtDeSharedState.h:1224
DtModelSetId
Definition: DtModelSetEnums.h:19
bool myInstancingCullDistEnabled
Definition: DtDeSharedState.h:1235
DtModelSetRealizationManager * myModelSetRealizationManager
Definition: DtDeSharedState.h:1133
Contains makVrv::DtDeTimeManager class.
bool myWireframeMode
Definition: DtDeSharedState.h:1139
float myHbaoLargeScalar
Definition: DtDeSharedState.h:1253
double myEmissiveTextureScale
Definition: DtDeSharedState.h:1212
DtModelDefinitionManager * myModelDefinitionManager
Definition: DtDeSharedState.h:1132
Template for Color values in [0,1] range.
Definition: DtColorValue.h:20
DtCoordinateSystem * myCoordinateSystem
Definition: DtDeSharedState.h:1134
double myGamma
Definition: DtDeSharedState.h:1228
DtColorValue myEvenSegmentIntersectorColor
Definition: DtDeSharedState.h:1189
bool myOmitCloudInCubeMap
Definition: DtDeSharedState.h:1168
double myStaticOceanLodRange
Definition: DtDeSharedState.h:1162
double myRegenerateCubeMapThreshold
Definition: DtDeSharedState.h:1166
int myHdrResolutionScale
Definition: DtDeSharedState.h:1229
int myPlanarReflectionTextureHeight
Definition: DtDeSharedState.h:1171
bool myIndirectDistScaleEnabled
Definition: DtDeSharedState.h:1239
double myLightPointScale
Definition: DtDeSharedState.h:1210
float myHbaoBias
Definition: DtDeSharedState.h:1250
bool myDiGuyTextureVariationsEnabled
Definition: DtDeSharedState.h:1194
float myArtPartSmoothingPeriod
Definition: DtDeSharedState.h:1243
bool myUseGlobalDiffuse
Definition: DtDeSharedState.h:1147
DtLightPointManager core base class for DtOsgLightPointManger (which does most of the work for light ...
Definition: DtLightPointManager.h:28
bool myRotorWashDecalEnabled
Definition: DtDeSharedState.h:1159

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)