class ART::IOptions
Planetary system options. More...
#include <ARTIOptions.h>
Inherits: IREDObject.
Public functions:
virtual void | ForcePrismsRealMeshShadows ( ART::PRISM_TYPE iType, bool iRealShadows ) = 0 |
virtual int | GetAntiAliasing ( ) const = 0 |
virtual double | GetAntiAliasingAlphaMax ( ) const = 0 |
virtual double | GetAntiAliasingAlphaMin ( ) const = 0 |
virtual double | GetAntiAliasingMotionThreshold ( ) const = 0 |
virtual bool | GetAtmosphericCloudShadows ( ) const = 0 |
virtual double | GetAtmosphericGamma ( ) const = 0 |
virtual bool | GetAtmosphericLandscapeShadows ( ) const = 0 |
virtual int | GetAtmosphericSamples ( ART::ATMOSPHERIC_SAMPLE iSample ) const = 0 |
virtual bool | GetCelestialBodiesPathsDisplay ( ) const = 0 |
virtual double | GetCloseOrbitFOVRatio ( ) const = 0 |
virtual double | GetCloudsDensity ( ) const = 0 |
virtual void | GetCloudsFadeDistances ( double & oFadeStart, double & oFadeEnd ) const = 0 |
virtual double | GetCloudsRelighting ( ) const = 0 |
virtual int | GetCloudsRenderingResolution ( ) const = 0 |
virtual ART::DISPLAY_MODE | GetDisplayMode ( ) const = 0 |
virtual int | GetFullSceneAntiAliasing ( ) const = 0 |
virtual double | GetGeometryGIUpdateTime ( ) const = 0 |
virtual double | GetGISamplesSpread ( ) const = 0 |
virtual double | GetMaxCloudsDensity ( ) const = 0 |
virtual double | GetMaxPrismsDensity ( ) const = 0 |
virtual double | GetPlanetLandscapeOpsTime ( ) const = 0 |
virtual int | GetPlanetLandscapeThreadsCount ( ) const = 0 |
virtual double | GetPlanetPatchOffScreenSplitSize ( ) const = 0 |
virtual double | GetPlanetPatchOnScreenSplitSize ( ) const = 0 |
virtual double | GetPlanetResolution ( ) const = 0 |
virtual double | GetPrismsDensity ( ART::PRISM_TYPE iType ) const = 0 |
virtual bool | GetPrismsExactSpawn ( ART::PRISM_TYPE iType ) const = 0 |
virtual void | GetPrismsFadeDistances ( double & oFadeStart, double & oFadeEnd, ART::PRISM_TYPE iType ) const = 0 |
virtual double | GetPrismsMeshFadeOffset ( ART::PRISM_TYPE iType ) const = 0 |
virtual int | GetPrismsPassesCount ( ) const = 0 |
virtual int | GetPrismsShadowRange ( ART::PRISM_TYPE iType ) const = 0 |
virtual int | GetPrismsSpawnOffset ( ART::PRISM_TYPE iType ) const = 0 |
virtual double | GetPrismsSplatOverlap ( ART::PRISM_TYPE iType ) const = 0 |
virtual double | GetSkyReflectanceMultiplier ( ) const = 0 |
virtual void | GetSnowColor ( RED::Color & oColor, float & oReflectance ) = 0 |
virtual double | GetSSAORadius ( ) const = 0 |
virtual int | GetSSAOSamplesCount ( ) const = 0 |
virtual int | GetSSRBorderFade ( ) const = 0 |
virtual double | GetSSRCameraFade ( ) const = 0 |
virtual double | GetSSRObjectThickness ( ) const = 0 |
virtual double | GetSSRRayResolution ( ) const = 0 |
virtual int | GetSSRRefiningSteps ( ) const = 0 |
virtual int | GetSSRRenderingResolution ( ) const = 0 |
virtual double | GetSSRStrength ( ) const = 0 |
virtual double | GetStarCSMAlphaThreshold ( ) const = 0 |
virtual void | GetStarCSMBias ( double & oExponent, double & oScale ) const = 0 |
virtual int | GetStarCSMBlur ( ) const = 0 |
virtual int | GetStarCSMCount ( ) const = 0 |
virtual double | GetStarCSMOverlap ( ) const = 0 |
virtual double | GetStarCSMRange ( int iNumber ) const = 0 |
virtual void | GetStarCSMSize ( int & oSize ) const = 0 |
virtual double | GetStarGIStrengthInShadows ( ) const = 0 |
virtual double | GetStarInTheSkyFOVRatio ( ) const = 0 |
virtual int | GetThreadsCount ( ) const = 0 |
virtual bool | GetTrianglesFillMode ( ) const = 0 |
virtual bool | HasSSAO ( ) const = 0 |
virtual bool | IsForcedPrismsRealMeshShadows ( ART::PRISM_TYPE iType ) const = 0 |
virtual RED_RC | SetAllDefaultOptions ( ) = 0 |
virtual void | SetAntiAliasing ( int iAA ) = 0 |
virtual void | SetAntiAliasingAlphaMax ( double iAlphaMax ) = 0 |
virtual void | SetAntiAliasingAlphaMin ( double iAlphaMin ) = 0 |
virtual void | SetAntiAliasingMotionThreshold ( double iThreshold ) = 0 |
virtual void | SetAtmosphericCloudShadows ( bool iShadows ) = 0 |
virtual void | SetAtmosphericGamma ( double iGamma ) = 0 |
virtual void | SetAtmosphericLandscapeShadows ( bool iShadows ) = 0 |
virtual void | SetAtmosphericSamples ( ART::ATMOSPHERIC_SAMPLE iSample, int iCount ) = 0 |
virtual void | SetCelestialBodiesPathsDisplay ( bool iOnOff ) = 0 |
virtual void | SetCloseOrbitFOVRatio ( double iCloseFOVRatio ) = 0 |
virtual void | SetCloudsDensity ( double iDensity ) = 0 |
virtual void | SetCloudsFadeDistances ( double iFadeStart, double iFadeEnd ) = 0 |
virtual void | SetCloudsRelighting ( double iRelighting ) = 0 |
virtual void | SetCloudsRenderingResolution ( int iScale ) = 0 |
virtual void | SetDisplayMode ( ART::DISPLAY_MODE iDisplayMode ) = 0 |
virtual void | SetFullSceneAntiAliasing ( int iScale ) = 0 |
virtual void | SetGeometryGIUpdateTime ( double iTime ) = 0 |
virtual void | SetGISamplesSpread ( double iSpread ) = 0 |
virtual void | SetPlanetLandscapeOpsTime ( double iTime ) = 0 |
virtual void | SetPlanetLandscapeThreadsCount ( int iThreadsCount ) = 0 |
virtual void | SetPlanetPatchOffScreenSplitSize ( double iSplitSize ) = 0 |
virtual void | SetPlanetPatchOnScreenSplitSize ( double iSplitSize ) = 0 |
virtual RED_RC | SetPlanetResolution ( double iResolution ) = 0 |
virtual void | SetPrismsDensity ( ART::PRISM_TYPE iType, double iDensity ) = 0 |
virtual void | SetPrismsExactSpawn ( ART::PRISM_TYPE iType, bool iExact ) = 0 |
virtual void | SetPrismsFadeDistances ( ART::PRISM_TYPE iType, double iFadeStart, double iFadeEnd ) = 0 |
virtual void | SetPrismsMeshFadeOffset ( ART::PRISM_TYPE iType, double iOffset ) = 0 |
virtual void | SetPrismsPassesCount ( int iCount ) = 0 |
virtual void | SetPrismsShadowRange ( ART::PRISM_TYPE iType, int iMaxCSM ) = 0 |
virtual void | SetPrismsSpawnOffset ( ART::PRISM_TYPE iType, int iOffset ) = 0 |
virtual void | SetPrismsSplatOverlap ( ART::PRISM_TYPE iType, double iOverlap ) = 0 |
virtual void | SetSkyReflectanceMultiplier ( double iMult ) = 0 |
virtual void | SetSnowColor ( const RED::Color & iColor, float iReflectance ) = 0 |
virtual void | SetSSAO ( bool iEnabled ) = 0 |
virtual void | SetSSAORadius ( double iRadius ) = 0 |
virtual void | SetSSAOSamplesCount ( int iCount ) = 0 |
virtual void | SetSSRBorderFade ( int iPixelCount ) = 0 |
virtual void | SetSSRCameraFade ( double iDirection ) = 0 |
virtual void | SetSSRObjectThickness ( double iThickness ) = 0 |
virtual void | SetSSRRayResolution ( double iResolution ) = 0 |
virtual void | SetSSRRefiningSteps ( int iStepsCount ) = 0 |
virtual void | SetSSRRenderingResolution ( int iResolution ) = 0 |
virtual void | SetSSRStrength ( double iStrength ) = 0 |
virtual void | SetStarCSMAlphaThreshold ( double iAlpha ) = 0 |
virtual RED_RC | SetStarCSMBias ( double iExponent, double iScale ) = 0 |
virtual void | SetStarCSMBlur ( int iBlur ) = 0 |
virtual void | SetStarCSMOverlap ( double iOverlap ) = 0 |
virtual RED_RC | SetStarCSMRange ( double iRange, int iNumber ) = 0 |
virtual void | SetStarCSMSize ( int iSize ) = 0 |
virtual void | SetStarGIStrengthInShadows ( double iGIShadowStrength ) = 0 |
virtual void | SetStarInTheSkyFOVRatio ( double iStarFOVRatio ) = 0 |
virtual void | SetThreadsCount ( int iThreadsCount ) = 0 |
virtual void | SetTrianglesFillMode ( bool iFillMode ) = 0 |
Public static functions:
static RED::CID | GetClassID ( ) |
Detailed description:
Planetary system options.
The CID_ARTWorld class object (the world singleton) implements the ART::IOptions interface. This interface lets you control all the settings available in the planetary engine.
Functions documentation
public static RED::CID ART::IOptions::GetClassID | ( | ) |
public virtual void ART::IOptions::ForcePrismsRealMeshShadows | ( | ART::PRISM_TYPE | iType, |
bool | iRealShadows | ||
) | = 0 |
Force real mesh shadows to be used for a given category of prisms.
Parameters:
iType: | The considered type of prisms. |
iRealShadows: | If true, real mesh shadows are forced, if false, the real mesh shadow setting for the prism is used. |
public virtual int ART::IOptions::GetAntiAliasing | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetAntiAliasingAlphaMax | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetAntiAliasingAlphaMin | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetAntiAliasingMotionThreshold | ( | ) const = 0 |
Returns:
public virtual bool ART::IOptions::GetAtmosphericCloudShadows | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetAtmosphericGamma | ( | ) const = 0 |
Returns:
public virtual bool ART::IOptions::GetAtmosphericLandscapeShadows | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetAtmosphericSamples | ( | ART::ATMOSPHERIC_SAMPLE | iSample | ) const = 0 |
Returns:
Parameters:
iSample: | The category of samples processed. |
public virtual bool ART::IOptions::GetCelestialBodiesPathsDisplay | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetCloseOrbitFOVRatio | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetCloudsDensity | ( | ) const = 0 |
Returns:
public virtual void ART::IOptions::GetCloudsFadeDistances | ( | double & | oFadeStart, |
double & | oFadeEnd | ||
) | const = 0 |
Get clouds fading distances.
Parameters:
oFadeStart: | Startup fading distance. |
oFadeEnd: | End fading distance. |
public virtual double ART::IOptions::GetCloudsRelighting | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetCloudsRenderingResolution | ( | ) const = 0 |
Returns:
public virtual ART::DISPLAY_MODE ART::IOptions::GetDisplayMode | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetFullSceneAntiAliasing | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetGeometryGIUpdateTime | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetGISamplesSpread | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetMaxCloudsDensity | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetMaxPrismsDensity | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetPlanetLandscapeOpsTime | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetPlanetLandscapeThreadsCount | ( | ) const = 0 |
Return the number of auxiliary threads used to calculate the landscape.
public virtual double ART::IOptions::GetPlanetPatchOffScreenSplitSize | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetPlanetPatchOnScreenSplitSize | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetPlanetResolution | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetPrismsDensity | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms whose density is searched for. |
public virtual bool ART::IOptions::GetPrismsExactSpawn | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms whose spawning method is searched for. |
public virtual void ART::IOptions::GetPrismsFadeDistances | ( | double & | oFadeStart, |
double & | oFadeEnd, | ||
ART::PRISM_TYPE | iType | ||
) | const = 0 |
Get prisms fading distances.
Parameters:
oFadeStart: | Startup fading distance. |
oFadeEnd: | End fading distance. |
iType: | The type of prisms whose fade distances are searched for. |
public virtual double ART::IOptions::GetPrismsMeshFadeOffset | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The considered type of prisms. |
public virtual int ART::IOptions::GetPrismsPassesCount | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetPrismsShadowRange | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms to consider. |
public virtual int ART::IOptions::GetPrismsSpawnOffset | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms whose spawning offset is searched for. |
public virtual double ART::IOptions::GetPrismsSplatOverlap | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms whose overlap distance is searched for. |
public virtual double ART::IOptions::GetSkyReflectanceMultiplier | ( | ) const = 0 |
Returns:
public virtual void ART::IOptions::GetSnowColor | ( | RED::Color & | oColor, |
float & | oReflectance | ||
) | = 0 |
Get the snow color and reflectance.
Parameters:
oColor: | The RGB snow color in [ 0.0, 1.0 ] |
oReflectance: | The snow reflectance factor in [ 0.0, 1.0 ]. |
public virtual double ART::IOptions::GetSSAORadius | ( | ) const = 0 |
Gets the radius of the SSAO effect.
Returns:
public virtual int ART::IOptions::GetSSAOSamplesCount | ( | ) const = 0 |
Gets the number of samples to compute the SSAO.
Returns:
public virtual int ART::IOptions::GetSSRBorderFade | ( | ) const = 0 |
Gets the distance where the effect fades out to the screen border.
Returns:
public virtual double ART::IOptions::GetSSRCameraFade | ( | ) const = 0 |
Gets the direction for which the SSR starts to fade when looking at the camera.
Returns:
public virtual double ART::IOptions::GetSSRObjectThickness | ( | ) const = 0 |
Gets the object thickness for computing the SSR.
Returns:
public virtual double ART::IOptions::GetSSRRayResolution | ( | ) const = 0 |
Gets the resolution of the SSR ray marching between 0 and 1.
The resolution is the number of samples per pixel. Its value is strictly greater than 0 and lower or equal to 1.
Returns:
public virtual int ART::IOptions::GetSSRRefiningSteps | ( | ) const = 0 |
Gets the number of refining step after the first raymarching of the SSR.
Returns:
public virtual int ART::IOptions::GetSSRRenderingResolution | ( | ) const = 0 |
Gets the rendering resolution of the SSR.
Returns:
public virtual double ART::IOptions::GetSSRStrength | ( | ) const = 0 |
Gets the strength of the SSR effect.
Returns:
public virtual double ART::IOptions::GetStarCSMAlphaThreshold | ( | ) const = 0 |
Returns:
public virtual void ART::IOptions::GetStarCSMBias | ( | double & | oExponent, |
double & | oScale | ||
) | const = 0 |
Get the bias of star cascaded shadow maps.
Parameters:
oExponent: | The power function exponent applied to distance between observer and geometry. |
oScale: | The scaling function applied to distance between observer an geometry. |
public virtual int ART::IOptions::GetStarCSMBlur | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetStarCSMCount | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetStarCSMOverlap | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetStarCSMRange | ( | int | iNumber | ) const = 0 |
Returns:
Parameters:
iNumber: | The number of the CSM to access. |
public virtual void ART::IOptions::GetStarCSMSize | ( | int & | oSize | ) const = 0 |
Access the dimensions of each star cascaded shadow map.
Parameters:
oSize: | Pixel size of the star cascaded shadow map. |
public virtual double ART::IOptions::GetStarGIStrengthInShadows | ( | ) const = 0 |
Returns:
public virtual double ART::IOptions::GetStarInTheSkyFOVRatio | ( | ) const = 0 |
Returns:
public virtual int ART::IOptions::GetThreadsCount | ( | ) const = 0 |
Return the number of auxiliary threads used for all the calculations.
public virtual bool ART::IOptions::GetTrianglesFillMode | ( | ) const = 0 |
Returns:
public virtual bool ART::IOptions::HasSSAO | ( | ) const = 0 |
Tests if the SSAO is enabled or not.
Returns:
public virtual bool ART::IOptions::IsForcedPrismsRealMeshShadows | ( | ART::PRISM_TYPE | iType | ) const = 0 |
Returns:
Parameters:
iType: | The type of prisms to consider. |
public virtual RED_RC ART::IOptions::SetAllDefaultOptions | ( | ) = 0 |
Sets all options default values.
Returns:
public virtual void ART::IOptions::SetAntiAliasing | ( | int | iAA | ) = 0 |
Sets the temporal anti-aliasing level for the deferred pipeline.
This method sets the level of AA in use for the entire deferred pipeline. The value if iAA is turned into the square number of samples. iAA = 4 means 4 x 4 = 16 sub samples per pixel. The AA for the deferred pipeline is a temporal anti-aliasing.
Parameters:
iAA: | New temporal AA value for the deferred pipeline, in [ 1, 8 ]. iAA is clamped to these bounds. |
public virtual void ART::IOptions::SetAntiAliasingAlphaMax | ( | double | iAlphaMax | ) = 0 |
Define the maximal anti-aliasing frame to frame accumulation factor.
This alpha value must be greater than the alpha value set using ART::IOptions::SetAntiAliasingAlphaMin. It defines, with the minimal alpha value, the range of variations used by the temporal anti-aliasing to integrate a new frame contribution to the final image.
Larger values for this setting reduce the ghosting but increase flickering.
The startup value for this setting is 0.8. Usual range is in 0.5 - 1.0.
Parameters:
iAlphaMax: | A value in [ alpha_min, 1.0 ]. Silently clamped to the current minimal alpha. |
public virtual void ART::IOptions::SetAntiAliasingAlphaMin | ( | double | iAlphaMin | ) = 0 |
Define the anti-aliasing frame to frame accumulation factor.
This 'alpha' value defines the accumulation factor of the current frame vs. the history of all frames that were rendered before. The accumulation is color = alpha * color( n ) + ( 1 - alpha ) * color( n - 1 ).
The temporal anti-aliasing algorithm may dynamically change the alpha used for frame to frame accumulation and increase it up to the maximal alpha value defined by ART::IOptions::SetAntiAliasingAlphaMax.
Larger values for this setting reduce the ghosting but increase flickering.
The startup value for this setting is 0.1. Usual range is in 0.05 - 0.2.
Parameters:
iAlphaMin: | A value in [ 0.01, 1.0 ]. Silently clamped to the current maximal alpha value. |
public virtual void ART::IOptions::SetAntiAliasingMotionThreshold | ( | double | iThreshold | ) = 0 |
Defines the anti-aliasing motion threshold.
The anti-aliasing motion threshold defines how much the temporal samples accumulation can be reduced in image areas that exhibit strong differences in motion (for instance with moving objects or after camera movements that change the visibility in an image). A low value of this value increases the ghosting effects of the temporal anti-aliasing and tend to generate smoother variations in the image, while higher values will show less ghosting and more flickering in the image.
Starting values for this setting are in the 0.1 - 0.7 range. Default is 0.4.
Parameters:
iThreshold: | A value in [ 0.0, inf [. |
public virtual void ART::IOptions::SetAtmosphericCloudShadows | ( | bool | iShadows | ) = 0 |
Toggle the sky cloud shadows over the atmosphere.
Enabling sky cloud shadows adds shadow casting of the clouds over the atmosphere, resulting in a higher realism, resulting in a higher rendering cost.
public virtual void ART::IOptions::SetAtmosphericGamma | ( | double | iGamma | ) = 0 |
Sets the atmospheric gamma transform.
The atmosphere has a specific extra gamma transform that can be applied to it's in-scattering term. This can be used to compensate low sampling rates of the sky to avoid getting dark horizons.
Usual ranges for this setting are in 0.5 - 5.0.
Parameters:
iGamma: | Gamma values in [ 0.01, inf [. |
public virtual void ART::IOptions::SetAtmosphericLandscapeShadows | ( | bool | iShadows | ) = 0 |
Toggle the sky landscape shadows over the atmosphere.
Enabling sky landscape shadows adds shadow casting of the landscape and vegetation over the atmosphere, resulting in a higher realism, resulting in a higher rendering cost.
public virtual void ART::IOptions::SetAtmosphericSamples | ( | ART::ATMOSPHERIC_SAMPLE | iSample, |
int | iCount | ||
) | = 0 |
Sets the number of atmospheric samples used for the rendering of the atmosphere for a given category of effects.
Parameters:
iSample: | The category of samples processed. |
iCount: | The number of samples. |
public virtual void ART::IOptions::SetCelestialBodiesPathsDisplay | ( | bool | iOnOff | ) = 0 |
Enable or disable the display of celestial bodies trajectories.
Parameters:
iOnOff: | Set to true to display celestial bodies path, false to hide them. |
public virtual void ART::IOptions::SetCloseOrbitFOVRatio | ( | double | iCloseFOVRatio | ) = 0 |
Define the field of view for switching to 'close orbit' graphics.
A planetary body has three graphics display:
- A 'star in the sky' representation when it's seen from a very far distance like a star in the sky.
- A 'far away' representation which allow for more details.
- A 'close orbit' representation for detailed walkthroughs.
Switching among these graphics mode is based on the visible size of the planetary body on screen. A percentage of the field of view determines when the engine has to switch graphics.
Parameters:
iCloseFOVRatio: | Above this FOV percentage value, the planetary body will be rendered using 'close orbit' graphics. iCloseFOVRatio is silently clamped to [ 0.0, 1.0 ]. |
public virtual void ART::IOptions::SetCloudsDensity | ( | double | iDensity | ) = 0 |
Sets the clouds density.
This is a global scaling factor applied to clouds to control the global clouds density.
Parameters:
iDensity: | Density value in [ 0.0, 16.0 ]. Any value is silently clamped to these bounds. |
public virtual void ART::IOptions::SetCloudsFadeDistances | ( | double | iFadeStart, |
double | iFadeEnd | ||
) | = 0 |
Define the clouds fade distances.
Parameters:
iFadeStart: | Startup fading distance. Silently forced to be greater than or equal to 0. |
iFadeEnd: | End fading distance, must be greater than iFadeStart. If not, the value is silently set to iFadeStart. |
public virtual void ART::IOptions::SetCloudsRelighting | ( | double | iRelighting | ) = 0 |
Setup the sky relighting amount generated by clouds and clouds covers.
This percentage is a relighting effect generated by clouds and clouds covers resulting of the absorption of the sunlight by clouds and clouds covers. It brightens cloudy shadowed regions.
Parameters:
iRelighting: | The percentage of relighting in [ 0.0, 1.0 ]. Silently clamped to these boudaries. |
public virtual void ART::IOptions::SetCloudsRenderingResolution | ( | int | iScale | ) = 0 |
Sets the clouds rendering resolution.
Sets the clouds downscaling factor in [ 1, 4 ]. The cloud rendering resolution is lowered by 1 << iScale. So setting iScale to 2 reduces the rendering resolution of clouds by 2 in width and height, so 1/4 pixels.
Parameters:
iScale: | values 1 = x1 rendering, 2 = x1/4, 3 = x1/9, 4 = x1/16. |
public virtual void ART::IOptions::SetDisplayMode | ( | ART::DISPLAY_MODE | iDisplayMode | ) = 0 |
Sets the global world display mode.
Parameters:
iDisplayMode: | The new display mode to use. |
public virtual void ART::IOptions::SetFullSceneAntiAliasing | ( | int | iScale | ) = 0 |
Apply a rendered image scaling to the rendered images.
This method can be used to render larger images than actually requested. By setting a scale to x2 x3 or x4, the initial rendered image size will be increased by x2 x3 or x4. For instance rendering a 1920 x 1080 image with a x2 scale renders a 3840 x 2160 real image.
Scaled images are downsized before display or are accessed "as is" if offscreen rendering is enabled.
Modifying FSAA does not change the size of kernels used by the post process camera, that may need to be rescaled accordingly by the calling application.
A change in the FSAA setting has a one frame delay before being actually visible.
Parameters:
iScale: | Scaling factor to apply to rendered images resolution in [ 1, 4 ]. Default is 1 (no scaling). iScale is clamped to [ 1, 4 ] by the method. |
public virtual void ART::IOptions::SetGeometryGIUpdateTime | ( | double | iTime | ) = 0 |
Sets the amount of time allowed to update global illumination caches for geometries.
Geometries may need an update, mostly for dynamic global illumination caches. This is the amount of time allowed each frame to perform these update tasks. If 0.0 milliseconds are allowed, geometry updates are still processed at minimal performance rate.
Parameters:
iTime: | The allowed time in milliseconds. The provided value is forced to be at least 0. |
public virtual void ART::IOptions::SetGISamplesSpread | ( | double | iSpread | ) = 0 |
Sets the spreading of GI cache samples used by geometries.
Parameters:
iSpread: | The spread factor to use in [ 0.01, 4.0 ]. Default is 1.0. |
public virtual void ART::IOptions::SetPlanetLandscapeOpsTime | ( | double | iTime | ) = 0 |
Sets the time allowed to planet landscape operations per frame.
This is the maximal time allowed per frame dedicated to the planet geometry update. Lowering this number smoothes the framerate but the landscape can take longer to update and to show at full quality. Increasing this number will on the other hand favor landscape update speed. In the latter case, depending on the data available from calculating threads, the FPS may suffer some variations.
Parameters:
iTime: | The time allowed in [ 1.0, 100.0 ]. Default is 5.0 |
public virtual void ART::IOptions::SetPlanetLandscapeThreadsCount | ( | int | iThreadsCount | ) = 0 |
Sets the number of auxiliary threads used to calculate the landscape.
The default value for this setting is 4096.
Parameters:
iThreadsCount: | The number of auxiliary threads. If 0, the landscape is calculated on the application update thread. Max value is 4096. |
public virtual void ART::IOptions::SetPlanetPatchOffScreenSplitSize | ( | double | iSplitSize | ) = 0 |
Define the planet 'off screen' patch split pixel size.
Parameters:
iSplitSize: | The new 'off screen' planet patch split size value. he provided value is clamped to 1.0 if it's lower than 1.0. |
public virtual void ART::IOptions::SetPlanetPatchOnScreenSplitSize | ( | double | iSplitSize | ) = 0 |
Define the planet 'on screen' patch split pixel size.
Parameters:
iSplitSize: | The new 'on screen' planet patch split size value. The provided value is clamped to 1.0 if it's lower than 1.0. |
public virtual RED_RC ART::IOptions::SetPlanetResolution | ( | double | iResolution | ) = 0 |
Set the resolution of a planet.
This option value must be set before the simulation startup.
Parameters:
iResolution: | The finest resolution of a planet, in meters. The supplied value is clamped to the minimal 1 millimeter resolution. |
Returns:
public virtual void ART::IOptions::SetPrismsDensity | ( | ART::PRISM_TYPE | iType, |
double | iDensity | ||
) | = 0 |
Define the prisms density.
This value defines the overall prism density that are spawned. 1.0 is normal density, that can be strengthened or lowered. The default density is 8.0.
Parameters:
iType: | The type of prisms whose density is to be modified. |
iDensity: | Density value in [ 0.0, 16.0 ]. Any value is silently clamped to these bounds. |
public virtual void ART::IOptions::SetPrismsExactSpawn | ( | ART::PRISM_TYPE | iType, |
bool | iExact | ||
) | = 0 |
Define the prisms spawning method.
If set to true, prisms are accurately scattered over the landscape. When false (the default), prisms are scattered using an approximative method that can lead to a lower amount of representation of prisms in thin densities areas.
Parameters:
iType: | The type of prisms whose spawning method is to be modified. |
iExact: | Set to true for an accurate prisms placement, false to use a faster method. |
public virtual void ART::IOptions::SetPrismsFadeDistances | ( | ART::PRISM_TYPE | iType, |
double | iFadeStart, | ||
double | iFadeEnd | ||
) | = 0 |
Define the prisms fade distances in meters.
This value defines the prism fading distances. Prisms of iType start fading out at iFadeStart and have disappeared at iFadeEnd.
Parameters:
iType: | The type of prisms whose distances is to be modified. |
iFadeStart: | Startup fading distance. Silently forced to be greater than or equal to 0. |
iFadeEnd: | End fading distance, must be greater than iFadeStart. If not, the value is silently set to iFadeStart. |
public virtual void ART::IOptions::SetPrismsMeshFadeOffset | ( | ART::PRISM_TYPE | iType, |
double | iOffset | ||
) | = 0 |
Shift the prism meshes display distance.
This method can be used to globally shift the display distances of all prisms meshes in a category of prisms.
Parameters:
iType: | The considered type of prisms. |
iOffset: | The distance offset (in meters) to apply. Can be positive or negative. |
public virtual void ART::IOptions::SetPrismsPassesCount | ( | int | iCount | ) = 0 |
Define the number of passes used for the rendering of prisms.
Reducing the number of passes will improve display performance at the expense of a loss in the visual quality of rendered plants. The default is to use 3 rendering passes for prisms.
Parameters:
iCount: | The number of rendering passes in [ 1, 3 ]. The provided value is clamped to these bounds. |
public virtual void ART::IOptions::SetPrismsShadowRange | ( | ART::PRISM_TYPE | iType, |
int | iMaxCSM | ||
) | = 0 |
Define the shadowing range of prisms.
This sets the number of cascaded shadow maps (starting from the closest CSM number 0 up to the specified iMaxCSM number) that'll cast shadows for the corresponding prisms.
Parameters:
iType: | The considered type of prisms. |
iMaxCSM: | Defines the list of CSMs that'll cast shadows for the prisms in [ 0, iMaxCSM [ excluded. |
public virtual void ART::IOptions::SetPrismsSpawnOffset | ( | ART::PRISM_TYPE | iType, |
int | iOffset | ||
) | = 0 |
Modify the prisms spawning distance.
This parameter can be set to modify the distance at which prisms are seeded over the landscape. The specified value is an offset added to the initial patch depth at which the selected category of prisms get spawned over the landscape. Increasing the value increases the display depth thus spawning prisms from a closer distance. This reduces the workload of spawning prisms and also may constraint some prisms in size. Decreasing the value decreases the display depth thus spawning prisms from farther away. This increases the prisms workload, make prisms splats visible from farther away too. This relaxes size constraints on prisms.
Parameters:
iType: | The type of prisms whose spawning distance. |
iOffset: | The spawning depth offset. |
public virtual void ART::IOptions::SetPrismsSplatOverlap | ( | ART::PRISM_TYPE | iType, |
double | iOverlap | ||
) | = 0 |
Define the prisms splat overlap area with prisms.
This value in meters defines the overlap area between the prism and the splat. At zero meters, at the prisms ending fade distance, splats appear entirely. At a distance greater than zero meters, splats start appearing at the prisms end fade distance minus iOverlapDistance and are fully appeared at the prisms end fade distance.
Parameters:
iType: | The type of prisms whose overlap distance is to be modified. |
iOverlap: | The overlap distance of splats with prisms in meters. |
public virtual void ART::IOptions::SetSkyReflectanceMultiplier | ( | double | iMult | ) = 0 |
Sets the reflectance multiplier applied on the sky reflections.
This affects the intensity of the reflected sky on the ground.
Parameters:
iMult: | Multiplier value in [ 0.0, inf [. Silently clamped to positive values. |
public virtual void ART::IOptions::SetSnowColor | ( | const RED::Color & | iColor, |
float | iReflectance | ||
) | = 0 |
Sets the color and reflectance of snow.
Parameters:
iColor: | The RGB snow color in [ 0.0, 1.0 ] |
iReflectance: | The snow reflectance factor in [ 0.0, 1.0 ]. |
public virtual void ART::IOptions::SetSSAO | ( | bool | iEnabled | ) = 0 |
Enables or disables the SSAO.
Parameters:
iEnabled: | True to enable the SSAO, false to disable it. |
public virtual void ART::IOptions::SetSSAORadius | ( | double | iRadius | ) = 0 |
Sets the SSAO radius.
Parameters:
iRadius: | The Screen Space Ambient Occlusion radius in meters. |
public virtual void ART::IOptions::SetSSAOSamplesCount | ( | int | iCount | ) = 0 |
Sets the number of samples to compute the SSAO.
Parameters:
iCount: | Number of SSAO samples. |
public virtual void ART::IOptions::SetSSRBorderFade | ( | int | iPixelCount | ) = 0 |
Sets the distance to the screen border to start to fade out the effect.
Parameters:
iPixelCount: | The fade distance to the border in pixels. |
public virtual void ART::IOptions::SetSSRCameraFade | ( | double | iDirection | ) = 0 |
Sets the direction for which the SSR starts to fade when looking at the camera.
Parameters:
iDirection: | The camera direction between 0 and 1. 0 = no fading. |
public virtual void ART::IOptions::SetSSRObjectThickness | ( | double | iThickness | ) = 0 |
Sets the object thickness for computing the SSR.
Parameters:
iThickness: | The object thickness in meters. |
public virtual void ART::IOptions::SetSSRRayResolution | ( | double | iResolution | ) = 0 |
Sets the resolution of the SSR ray marching between 0 and 1.
The resolution is the number of samples per pixel. Its value is strictly greater than 0 and lower or equal to 1. Set to 1 for the highest quality with a ray marching on every pixel. Set to lower values to reduces the quality by spacing the samples.
Parameters:
iResolution: | The ray marching resolution. |
public virtual void ART::IOptions::SetSSRRefiningSteps | ( | int | iStepsCount | ) = 0 |
Sets the number of refining step after the first raymarching of the SSR.
Parameters:
iStepsCount: | The number of additionnal steps. |
public virtual void ART::IOptions::SetSSRRenderingResolution | ( | int | iResolution | ) = 0 |
Sets the rendering resolution of the SSR.
Sets the SSR downscaling factor in [ 1, 4 ]. The SSR rendering resolution is lowered by 1 << iScale. So setting iScale to 2 reduces the rendering resolution of clouds by 2 in width and height, so 1/4 pixels.
Parameters:
iScale: | values 1 = x1 rendering, 2 = x1/4, 3 = x1/9, 4 = x1/16. |
public virtual void ART::IOptions::SetSSRStrength | ( | double | iStrength | ) = 0 |
Sets the strength of the SSR effect. Set 0 to disable the SSR.
Parameters:
iStrength: | The strength of the SSR effect between 0 and 1. |
public virtual void ART::IOptions::SetStarCSMAlphaThreshold | ( | double | iAlpha | ) = 0 |
Sets the alpha shadowing threshold of the star cascaded shadow maps.
This is the alpha value of transparent geometries above which they're casting shadows.
Parameters:
iAlpha: | Alpha threshold in [ 0.01, 1.0 ]. |
public virtual RED_RC ART::IOptions::SetStarCSMBias | ( | double | iExponent, |
double | iScale | ||
) | = 0 |
Define the bias of star cascaded shadow maps.
Shadow bias is applied as a geometry shifting factor based on the distance between the shadowing geometry and the observer. The square distance is computed d2 and then bias = iScale * pow( d2, iExponent );
Parameters:
iExponent: | The power function exponent applied to distance between observer and geometry. |
iScale: | The scaling function applied to distance between observer an geometry. |
Returns:
public virtual void ART::IOptions::SetStarCSMBlur | ( | int | iBlur | ) = 0 |
Sets the blurring effect of the star cascaded shadow maps.
Parameters:
iBlur: | Size of the blur kernel used to blur shadows generated by the star CSMs. The range of blur values is [ 1, 20 ]. iBlur is silently clamped to these bounds. |
public virtual void ART::IOptions::SetStarCSMOverlap | ( | double | iOverlap | ) = 0 |
Define the overlap amount between star cascaded shadow maps.
Star cascaded shadow maps can be set with an overlapping percentage that smoothes their transitions.
Parameters:
iOverlap: | Overlap amount in percentage. Increasing this value smoothes the transition between shadow maps, but also reduces the accuracy of each shadow map. Value in [0.0, 0.4]. |
public virtual RED_RC ART::IOptions::SetStarCSMRange | ( | double | iRange, |
int | iNumber | ||
) | = 0 |
Define the range of a star cascaded shadow map.
The specified iNumber CSM starts at the effect distance of the previous CSM and ends at iRange. The first CSM starts at 1 meter from the observer. If the specified ranges are not increasing with iNumber, then the world simulation will return an error.
Parameters:
iRange: | The shadow map maximal effect range in meters. |
iNumber: | The number of the CSM to setup. |
Returns:
public virtual void ART::IOptions::SetStarCSMSize | ( | int | iSize | ) = 0 |
Sets the dimensions of the star cascaded shadow maps.
The star cascaded shadow map has dimensions based on the specified iSize. Depending on the aspect ratio of the world region to cover, the star CSM's maximal pixel size is set to iSize and the other dimension of the star CSM is automatically adjusted.
Parameters:
iSize: | Pixel width of the star cascaced shadow map. Silently clamped to [ 1, 8192 ]. |
public virtual void ART::IOptions::SetStarGIStrengthInShadows | ( | double | iGIShadowStrength | ) = 0 |
Sets the amount of star GI in shadows.
This method controls the strength of the amount of global illumination of indirect bounces produced by the sunlight. The real-time shading approximates the sun global illumination in lit and shadowed areas using different methods. This parameter controls the strength of the sun global illumination in shadowed areas.
Parameters:
iGIShadowStrength: | A value in [ 0.0, 1.0 ]. Default is 0.25. |
public virtual void ART::IOptions::SetStarInTheSkyFOVRatio | ( | double | iStarFOVRatio | ) = 0 |
Define the field of view for switching to 'star in the sky' graphics.
A planetary body has three graphics display:
- A 'star in the sky' representation when it's seen from a very far distance like a star in the sky.
- A 'far away' representation which allow for more details.
- A 'close orbit' representation for detailed walkthroughs.
Switching among these graphics mode is based on the visible size of the planetary body on screen. A percentage of the field of view determines when the engine has to switch graphics.
Parameters:
iStarFOVRatio: | Below this FOV percentage value, the planetary body will be rendered using 'star in the sky' graphics. iStarFOVRatio is silently clamped to [ 0.0, 1.0 ]. |
public virtual void ART::IOptions::SetThreadsCount | ( | int | iThreadsCount | ) = 0 |
Sets the number of auxiliary threads used for all the calculations.
The default value for this setting is 4096.
Parameters:
iThreadsCount: | The number of auxiliary threads. Max value is 4096. |
public virtual void ART::IOptions::SetTrianglesFillMode | ( | bool | iFillMode | ) = 0 |
Show rendered triangles on / off.
Parameters:
iFillMode: | if false, all the rendered triangles are rendered using lines, so they don't appear filled. If true, triangles are rendered as filled, plain, polygons. |