VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtShadowSettingsInterface.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 #include <vrvCoreQt/vrvCoreQt.h>
12 
13 #include <vrvUtil/DtUnicode.h>
14 
15 namespace makVrv
16 {
20  {
21 
22  public:
24  virtual ~DtShadowSettingsInterface();
25 
28 
30  virtual void setShadowsEnabled(bool enabled) = 0;
31 
33  virtual void setShadowsOnOceanEnabled(bool enabled) = 0;
34 
36  virtual void setEntitiesCastsShadows(bool enabled) = 0;
37 
39  virtual void setPropsCastsShadows(bool enabled) = 0;
40 
42  virtual void setTerrainCastsShadows(bool enabled) = 0;
43 
45  virtual void setMoonCastsShadows(bool enabled) = 0;
46 
48  virtual void setVisualizeShadows(bool enabled) = 0;
49 
51  virtual void setNumberOfSplits(unsigned int numSplits) = 0;
52 
54  virtual void setUseFrontFaceCulling(bool enabled) = 0;
55 
57  virtual void setUseCachedFarCascade(bool enabled) = 0;
58 
60  virtual void setFarCascadeUpdateFrequency(double value) = 0;
61 
63  virtual void setAdjustFarAndFlagsBasedOnHAT(bool enabled) = 0;
64 
66  virtual void setUsePolygonOffset(bool enabled) = 0;
67 
69  virtual void setPolygonOffset(float factor, float units) = 0;
70 
72  virtual void setPolygonOffsetCascade(unsigned int splitIndex) = 0;
73 
75  virtual void setGlobalLightShadowMapSize(unsigned int size) = 0;
76 
78  virtual void setUseMaximumViewDistance(bool enabled) = 0;
79 
81  virtual void setMaximumViewDistance(double viewDistance) = 0;
82 
84  virtual void setSplitNearDistanceMinimumBias(double bias) = 0;
85 
87  virtual void setSplitNearDistanceMaximumBias(double bias) = 0;
88 
90  virtual void setShadowAmbientFactor(float shadowAmbientFactor) = 0;
91 
93  virtual void setMixedSplitInterpolationValue(double interp) = 0;
94 
96  virtual void setShadowStabilizationScheme(const DtUnicode& selection) = 0;
97 
99  virtual void setSplitSelectionScheme(const DtUnicode& selection) = 0;
100 
102  virtual void setPreFilteringScheme(const DtUnicode& selection) = 0;
103 
105  virtual void setFilteringScheme(const DtUnicode& selection) = 0;
106 
108  virtual void setPoissonDiskSamplingScheme(const DtUnicode& selection) = 0;
109 
111  virtual void setUseViewportMulticast(bool enabled) = 0;
112 
114  virtual void setNumPersistentPassesPerCascade(unsigned int numPasses) = 0;
115 
117  virtual void setNumAdditionalPassesPerCascade(unsigned int numPasses) = 0;
118 
120  virtual void setPcfFilterWidth(unsigned int pcfFilterWidth) = 0;
121 
123  virtual void setBlendCascadesBoundaries(bool enabled) = 0;
124 
126  virtual void setApplyShadowToAmbientLighting(bool applyShadowToAmbientLighting) = 0;
127 
129 
132 
134  boost::signalslib::signal<void(bool)> signal_shadowsSet;
135 
137  boost::signalslib::signal<void(bool)> signal_shadowsOnOceanSet;
138 
140  boost::signalslib::signal<void(bool)> signal_shadowSettingsEntitiesCastsShadowsChanged;
141 
143  boost::signalslib::signal<void(bool)> signal_shadowSettingsPropsCastsShadowsChanged;
144 
146  boost::signalslib::signal<void(bool)> signal_shadowSettingsTerrainCastsShadowsChanged;
147 
149  boost::signalslib::signal<void(bool)> signal_shadowSettingsMoonCastsShadowsChanged;
150 
152  boost::signalslib::signal<void(bool)> signal_shadowSettingsVisualizeShadowsChanged;
153 
155  boost::signalslib::signal<void(int)> signal_shadowSettingsNumberOfSplitsChanged;
156 
158  boost::signalslib::signal<void(bool)> signal_shadowSettingsUseFrontFaceCullingChanged;
159 
161  boost::signalslib::signal<void(bool)> signal_shadowSettingsUseCachedFarCascadeChanged;
162 
164  boost::signalslib::signal<void(double)> signal_shadowSettingFarCascadeUpdateFreqChanged;
165 
166  boost::signalslib::signal<void(bool)> signal_shadowSettingAdjustFarAndFlagsBasedOnHATChanged;
167 
169  boost::signalslib::signal<void(bool)> signal_shadowSettingsUseViewportMulticastChanged;
170 
172  boost::signalslib::signal<void(bool)> signal_shadowSettingsUsePolygonOffsetChanged;
173 
175  boost::signalslib::signal<void(int)> signal_shadowSettingsPolygonOffsetCascadeChanged;
176 
178  boost::signalslib::signal<void(float, float)> signal_shadowSettingsPolygonOffsetChanged;
179 
181  boost::signalslib::signal<void(int)> signal_shadowSettingsSpotLightShadowMapSizeChanged;
182 
184  boost::signalslib::signal<void(int)> signal_shadowSettingsGlobalLightShadowMapSizeChanged;
185 
187  boost::signalslib::signal<void(bool)> signal_shadowSettingsUseMaximumViewDistanceChanged;
188 
190  boost::signalslib::signal<void(double)> signal_shadowSettingsMaximumViewDistanceChanged;
191 
193  boost::signalslib::signal<void(double)> signal_shadowSettingsSplitNearDistanceMinimumBiasChanged;
194 
196  boost::signalslib::signal<void(double)> signal_shadowSettingsSplitNearDistanceMaximumBiasChanged;
197 
199  boost::signalslib::signal<void(double)> signal_shadowSettingsSplitFarDistanceBiasChanged;
200 
202  boost::signalslib::signal<void(float)> signal_shadowSettingsShadowFactorChanged;
203 
205  boost::signalslib::signal<void(const DtUnicode&)> signal_shadowSettingsShadowStabilizationSchemeChanged;
206 
208  boost::signalslib::signal<void(float)> signal_shadowSettingsAntiFlickerQuantizationFactorChanged;
209 
211  boost::signalslib::signal<void(int)> signal_shadowSettingsSplitDistanceComputeSchemeChanged;
212 
214  boost::signalslib::signal<void(double)> signal_shadowSettingsSplitInterpolationValueChanged;
215 
217  boost::signalslib::signal<void(const DtUnicode&)> signal_shadowSettingsSplitSelectionSchemeChanged;
218 
220  boost::signalslib::signal<void(const DtUnicode&)> signal_shadowSettingsPreFilteringSchemeChanged;
221 
223  boost::signalslib::signal<void(const DtUnicode&)> signal_shadowSettingsFilteringSchemeChanged;
224 
226  boost::signalslib::signal<void(const DtUnicode&)> signal_shadowSettingsPoissonDiskSamplingSchemeChanged;
227 
229  boost::signalslib::signal<void(unsigned int)> signal_shadowSettingsNumPersistentPassesPerCascadeChanged;
230 
232  boost::signalslib::signal<void(unsigned int)> signal_shadowSettingsNumAdditionalPassesPerCascadeChanged;
233 
235  boost::signalslib::signal<void(unsigned int)> signal_shadowSettingsPcfFilterWidthChanged;
236 
238  boost::signalslib::signal<void(bool)> signal_shadowSettingsBlendCascadesBoundariesChanged;
239 
241  boost::signalslib::signal<void(bool)> signal_shadowSettingsApplyShadowToAmbientLightingChanged;
242 
244 
245  static const DtUnicode& theExactAntiFlickering();
246 
247  static const DtUnicode& theApproximateAntiFlickering();
248 
249  static const DtUnicode& theEyeSpaceString();
250 
251  static const DtUnicode& theLightSpaceString();
252 
253  static const DtUnicode& theNoneString();
254 
255  static const DtUnicode& theVarianceShadowMapsString();
256 
257  static const DtUnicode& theExponentialShadowMapsString();
258 
259  static const DtUnicode& theExponentialVarianceShadowMapsString();
260 
261  static const DtUnicode& thePoissonDiskPCF4String();
262 
263  static const DtUnicode& thePoissonDiskPCF8String();
264 
265  static const DtUnicode& thePoissonDiskPCF16String();
266 
267  static const DtUnicode& thePoissonDiskPCF24String();
268 
269  static const DtUnicode& thePoissonDiskPCF32String();
270 
271  static const DtUnicode& theUniformString();
272 
273  static const DtUnicode& theStratifiedString();
274 
275  };
276 } // namespace makVrv
boost::signalslib::signal< void(int)> signal_shadowSettingsNumberOfSplitsChanged
brief signal that the indicated shadow setting&#39;s shadow visualization mode changed ...
Definition: DtShadowSettingsInterface.h:155
boost::signalslib::signal< void(const DtUnicode &)> signal_shadowSettingsShadowStabilizationSchemeChanged
brief signal that the indicated shadow setting&#39;s shadow stabilization scheme changed ...
Definition: DtShadowSettingsInterface.h:205
boost::signalslib::signal< void(const DtUnicode &)> signal_shadowSettingsPoissonDiskSamplingSchemeChanged
brief signal that the indicated shadow setting&#39;s poisson disk sampling scheme changed ...
Definition: DtShadowSettingsInterface.h:226
boost::signalslib::signal< void(int)> signal_shadowSettingsGlobalLightShadowMapSizeChanged
brief signal that the indicated shadow setting&#39;s global light texture size for cascaded shadow mappin...
Definition: DtShadowSettingsInterface.h:184
boost::signalslib::signal< void(float, float)> signal_shadowSettingsPolygonOffsetChanged
brief signal that the indicated shadow setting&#39;s polygon offset parameter changed ...
Definition: DtShadowSettingsInterface.h:178
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
boost::signalslib::signal< void(bool)> signal_shadowSettingsUsePolygonOffsetChanged
brief signal that the indicated shadow setting&#39;s use polygon offset changed
Definition: DtShadowSettingsInterface.h:172
boost::signalslib::signal< void(double)> signal_shadowSettingFarCascadeUpdateFreqChanged
brief signal that the indicated shadow setting&#39;s use cached far cascade changed
Definition: DtShadowSettingsInterface.h:164
boost::signalslib::signal< void(int)> signal_shadowSettingsPolygonOffsetCascadeChanged
brief signal that the indicated shadow setting&#39;s polygon offset cascade changed
Definition: DtShadowSettingsInterface.h:175
boost::signalslib::signal< void(double)> signal_shadowSettingsMaximumViewDistanceChanged
brief signal that the indicated shadow setting&#39;s maximum view distance changed
Definition: DtShadowSettingsInterface.h:190
boost::signalslib::signal< void(bool)> signal_shadowsSet
brief signal that the indicated casts shadow flag changed
Definition: DtShadowSettingsInterface.h:134
This is the interface for the DtShadowSettingsPage.
Definition: DtShadowSettingsInterface.h:19
boost::signalslib::signal< void(const DtUnicode &)> signal_shadowSettingsFilteringSchemeChanged
brief signal that the indicated shadow setting&#39;s filtering scheme changed
Definition: DtShadowSettingsInterface.h:223
boost::signalslib::signal< void(float)> signal_shadowSettingsShadowFactorChanged
brief signal that the indicated shadow setting&#39;s shadow factor for modulating the scene changed ...
Definition: DtShadowSettingsInterface.h:202
voidpf void uLong size
Definition: ioapi.h:39
boost::signalslib::signal< void(double)> signal_shadowSettingsSplitNearDistanceMaximumBiasChanged
brief signal that the indicated shadow setting&#39;s split near distance maximum bias changed ...
Definition: DtShadowSettingsInterface.h:196
boost::signalslib::signal< void(double)> signal_shadowSettingsSplitFarDistanceBiasChanged
brief signal that the indicated shadow setting&#39;s split far distance bias changed
Definition: DtShadowSettingsInterface.h:199
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
boost::signalslib::signal< void(unsigned int)> signal_shadowSettingsPcfFilterWidthChanged
brief signal that the indicated shadow setting&#39;s PCF filter width changed
Definition: DtShadowSettingsInterface.h:235
boost::signalslib::signal< void(bool)> signal_shadowSettingsMoonCastsShadowsChanged
brief signal that the indicated shadow setting&#39;s moon casts shadow flag changed
Definition: DtShadowSettingsInterface.h:149
Contains DLL export macros.
boost::signalslib::signal< void(bool)> signal_shadowSettingsUseViewportMulticastChanged
brief signal that the indicated shadow setting&#39;s use cached far cascade changed
Definition: DtShadowSettingsInterface.h:169
boost::signalslib::signal< void(bool)> signal_shadowSettingAdjustFarAndFlagsBasedOnHATChanged
brief signal that the indicated casts shadow flag changed
Definition: DtShadowSettingsInterface.h:166
boost::signalslib::signal< void(bool)> signal_shadowSettingsVisualizeShadowsChanged
brief signal that the indicated shadow setting&#39;s shadow visualization mode changed ...
Definition: DtShadowSettingsInterface.h:152
boost::signalslib::signal< void(bool)> signal_shadowSettingsApplyShadowToAmbientLightingChanged
brief signal that the apply shadow factor to ambient lighting checkbox changed
Definition: DtShadowSettingsInterface.h:241
boost::signalslib::signal< void(double)> signal_shadowSettingsSplitNearDistanceMinimumBiasChanged
brief signal that the indicated shadow setting&#39;s split near distance minimum bias changed ...
Definition: DtShadowSettingsInterface.h:193
boost::signalslib::signal< void(float)> signal_shadowSettingsAntiFlickerQuantizationFactorChanged
brief signal that the indicated shadow setting&#39;s shadow anti-flicker quantization value for approxima...
Definition: DtShadowSettingsInterface.h:208
boost::signalslib::signal< void(bool)> signal_shadowSettingsUseCachedFarCascadeChanged
brief signal that the indicated shadow setting&#39;s use cached far cascade changed
Definition: DtShadowSettingsInterface.h:161
boost::signalslib::signal< void(bool)> signal_shadowSettingsPropsCastsShadowsChanged
brief signal that the indicated shadow setting&#39;s props casts shadow flag changed
Definition: DtShadowSettingsInterface.h:143
boost::signalslib::signal< void(unsigned int)> signal_shadowSettingsNumPersistentPassesPerCascadeChanged
brief signal that the indicated shadow setting&#39;s persistent number of passes per cascade changed ...
Definition: DtShadowSettingsInterface.h:229
boost::signalslib::signal< void(bool)> signal_shadowSettingsUseFrontFaceCullingChanged
brief signal that the indicated shadow setting&#39;s use front face culling changed
Definition: DtShadowSettingsInterface.h:158
boost::signalslib::signal< void(const DtUnicode &)> signal_shadowSettingsSplitSelectionSchemeChanged
brief signal that the indicated shadow setting&#39;s split selection scheme changed
Definition: DtShadowSettingsInterface.h:217
boost::signalslib::signal< void(int)> signal_shadowSettingsSpotLightShadowMapSizeChanged
brief signal that the indicated shadow setting&#39;s spot light texture atlas size changed ...
Definition: DtShadowSettingsInterface.h:181
boost::signalslib::signal< void(bool)> signal_shadowSettingsBlendCascadesBoundariesChanged
brief signal that the indicated shadow setting&#39;s skip frame blend cascades boundaries changed ...
Definition: DtShadowSettingsInterface.h:238
boost::signalslib::signal< void(bool)> signal_shadowSettingsEntitiesCastsShadowsChanged
brief signal that the indicated shadow setting&#39;s entities casts shadow flag changed ...
Definition: DtShadowSettingsInterface.h:140
boost::signalslib::signal< void(bool)> signal_shadowSettingsTerrainCastsShadowsChanged
brief signal that the indicated shadow setting&#39;s terrain casts shadow flag changed ...
Definition: DtShadowSettingsInterface.h:146
boost::signalslib::signal< void(bool)> signal_shadowSettingsUseMaximumViewDistanceChanged
brief signal that the indicated shadow setting&#39;s use maximum view distance changed ...
Definition: DtShadowSettingsInterface.h:187
boost::signalslib::signal< void(bool)> signal_shadowsOnOceanSet
brief signal that the indicated casts shadow on ocean flag changed
Definition: DtShadowSettingsInterface.h:137
boost::signalslib::signal< void(unsigned int)> signal_shadowSettingsNumAdditionalPassesPerCascadeChanged
brief signal that the indicated shadow setting&#39;s additional number of passes per cascade changed ...
Definition: DtShadowSettingsInterface.h:232
boost::signalslib::signal< void(double)> signal_shadowSettingsSplitInterpolationValueChanged
brief signal that the indicated shadow setting&#39;s mixed logarithmic uniform split interpolation value ...
Definition: DtShadowSettingsInterface.h:214
boost::signalslib::signal< void(const DtUnicode &)> signal_shadowSettingsPreFilteringSchemeChanged
brief signal that the indicated shadow setting&#39;s pre-filtering scheme changed
Definition: DtShadowSettingsInterface.h:220
boost::signalslib::signal< void(int)> signal_shadowSettingsSplitDistanceComputeSchemeChanged
brief signal that the indicated shadow setting&#39;s split distance compute scheme changed ...
Definition: DtShadowSettingsInterface.h:211

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)