Unigine::Render Class
Header: | #include <UnigineRender.h> |
Provides access to Unigine rendering functions. For example, it is used by AppWall application to render onto multiple monitors.
See Also#
- A set of UnigineScript API samples located in the <UnigineSDK>/data/samples/rendering/ folder
Render Class
Members
Render * get( )
Returns a pointer to the existing render.Return value
Pointer to the existing render.void setAlphaFade( int fade )
Enables or disables alpha-blend fading (dithering) for objects. Enabling the feature allows for objects LODs to be smoothly blended into each other over a fade distance.Arguments
- int fade - 1 to enable alpha fading (dithering) for objects, 0 to disable it. The default value is 1.
int isAlphaFade( )
Returns a value indicating if alpha-blend fading (dithering) is enabled for objects. When the feature is enabled, objects LODs are smoothly blended into each other over a fade distance.Return value
1 if alpha fading is enabled; otherwise, 0.void setAnimationLeaf( float leaf )
Sets the global scale for rotation angle of vegetation leaves.Arguments
- float leaf - Global leaf rotation angle. If a negative value is provided, 0 will be used instead.
float getAnimationLeaf( )
Returns the current scale for rotation angle of vegetation leaves.Return value
Global leaf rotation angle.float getAnimationOldTime( )
Returns the previous render animation time for vegetation.Return value
Animation time in milliseconds.void setAnimationScale( float scale )
Sets the global scale for rotation speed of vegetation leaves.Arguments
- float scale - Global leaf rotation speed.
float getAnimationScale( )
Returns the current global scale for rotation speed of vegetation leaves.Return value
Global leaf rotation speed.void setAnimationStem( float stem )
Sets the global scale for movement amplitude of vegetation stems.Arguments
- float stem - Global stem amplitude scale. If a negative value is provided, 0 will be used instead.
float getAnimationStem( )
Returns the current global scale for movement amplitude of vegetation stems.Return value
Global stem amplitude scale.void setAnimationTime( float time )
Sets the render animation time for vegetation.Arguments
- float time - Animation time in milliseconds.
float getAnimationTime( )
Returns the render animation time for vegetation.Return value
Animation time in milliseconds.void setAnimationWind( const Math::vec3 & wind )
Sets the direction of wind for all vegetation (grass and trees). It is a multiplier for the stem offset (in grass, stem and leaves materials).Arguments
- const Math::vec3 & wind - Offset for vegetation under wind by X, Y and Z axes.
Math::vec3 getAnimationWind( )
Returns the current direction of wind for all vegetation (grass and trees). It is a multiplier for the stem offset (in grass, stem and leaves materials).Return value
Offset for vegetation under wind by X, Y and Z axes.void setBorder( const Math::vec2 & border )
Sets width and height of the image border (in pixels), to be rendered outside the horizontal bounds of the screen to reduce artefacts of post effects.Arguments
- const Math::vec2 & border - Vector with components representing border sizes: X - width, Y - height.
Math::vec2 getBorder( )
Returns current width and height of the image border (in pixels), to be rendered outside the horizontal bounds of the screen to reduce artefacts of post effects.Return value
Vector with components representing border sizes: X - width, Y - height.int getAPI( )
Returns the current Graphics API, or API_UNKNOWN if API cannot be identified.Return value
The Graphics API flag (see API_* variables).void setAuxiliary( int auxiliary )
Enables or disables the auxiliary render buffer usage. The buffer should be enabled for render and post post-processes to work.Arguments
- int auxiliary - 1 to use the auxiliary buffer, 0 not to use. The default value is 1.
int isAuxiliary( )
Returns a value indicating if auxiliary render buffer is used. The buffer should be enabled for render and post post-processes to work.Return value
1 if the auxiliary buffer is used; otherwise, 0.void setBackgroundColor( const Math::vec4 & color )
Sets the background color by using given vector.Arguments
- const Math::vec4 & color - A background color vector.
const Math::vec4 & getBackgroundColor( )
Returns the background color vector.Return value
A background color vector.void setBentNormalRayTracing( int tracing )
Enables or disables ray-traced bent normals calculation. The use of SSRTGI for bent normals allows for smooth ambient lighting.Arguments
- int tracing - 1 to enable ray-traced bent normals calculation, 0 to disable. The default value is 1.
int isBentNormalRayTracing( )
Returns a value indicating if ray-traced bent normals calculation is enabled. The use of SSRTGI for bent normals allows for smooth ambient lighting.Return value
1 if ray-traced bent normals calculation is enabled; otherwise, 0.void setBentNormalRayTracingDenoise( int denoise )
Enables or disables noise reduction for ray-traced bent normals calculation. This option reduces noise by using the blur effect.Arguments
- int denoise - 1 to enable noise reduction for ray-traced bent normals calculation, 0 to disable. The default value is 1.
int isBentNormalRayTracingDenoise( )
Returns a value indicating if noise reduction for ray-traced bent normals calculation is enabled. This option reduces noise by using blur effect.Return value
1 if noise reduction for ray-traced bent normals calculation is enabled; otherwise, 0.void setBentNormalRayTracingThreshold( float threshold )
Sets the threshold value for the ray-traced bent normals calculation.Arguments
- float threshold - Bent normals ray tracing threshold value. The default value is 1.0f.
float getBentNormalRayTracingThreshold( )
Returns the current threshold value for the ray-traced bent normals calculation.Return value
Bent normal ray tracing threshold value. The default value is 1.0f.Ptr<Texture> getBlack2DArrayTexture( )
Returns black 2D array texture.Return value
Black 2D array texture.Ptr<Texture> getBlack2DTexture( )
Returns black 2D texture.Return value
Black 2D texture.Ptr<Texture> getBlack3DTexture( )
Returns black 3D texture.Return value
Black 3D texture.Ptr<Texture> getBlackCubeTexture( )
Returns black Cube texture.Return value
Black Cube texture.void setBloom( int bloom )
Enables or disables the bloom effect.Arguments
- int bloom - 1 value to enable the bloom effect, 0 to disable.
int isBloom( )
Returns a value indicating if the bloom effect is enabled.Return value
1 if the bloom effect is enabled; otherwise, 0.void setBloomPasses( int passes )
Sets the number of passes for the bloom effect. During the pass a bloom texture is generating. Up to 8 bloom textures can be generated: each texture has lower resolution (original size, original size /2, original size /4, so forth) with bloom effect. After that, all these bloom textures with the different resolution are composed for the final bloom texture.Arguments
- int passes - Number of bloom passes. The default value is 8. The higher the value the smoother is the effect. However, this option significantly affects performance.
int getBloomPasses( )
Returns the current number of passes for the bloom effect. During the pass a bloom texture is generating. Up to 8 bloom textures can be generated: each texture has lower resolution (original size, original size /2, original size /4, so forth) with bloom effect. After that, all these bloom textures with the different resolution are composed for the final bloom texture.Return value
Number of bloom passes.void setBloomPower( float power )
Sets the power of the bloom effect.- At the minimum value of 0.0f, the bloom effect is blurred.
- At the maximum value of 1.0f, the bloom effect is more contrast.
Arguments
- float power - Bloom power value within the [0.0f; 1.0f] range. The default value is 0.7f.
float getBloomPower( )
Returns the power of the bloom effect.- At the minimum value of 0.0f, the bloom effect is blurred.
- At the maximum value of 1.0f, the bloom effect is more contrast.
Return value
Bloom power value within the [0.0f; 1.0f] range.void setBloomResolution( int resolution )
Sets the resolution of the bloom effect.Arguments
- int resolution - Resolution of the bloom effect:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getBloomResolution( )
Returns the current resolution of the bloom effect.Return value
Resolution of the bloom effect:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setBloomScale( float scale )
Sets the scale of the bloom effect.Arguments
- float scale - Bloom scale value within the [0.0f; 1.0f] range. The default value is 0.3f.
float getBloomScale( )
Returns the scale of the bloom effect.Return value
Bloom scale value within the [0.0f; 1.0f] range.void setBudget( float budget )
Sets the render budget value, which limits the number of loaded/created graphics resources during a frame according to loading/creation time.Arguments
- float budget - Budget value in seconds. The default value is 1/60.
float getBudget( )
Returns current render budget value, which limits the number of loaded/created graphics resources during a frame according to loading/creation time.Return value
Budget value in seconds. The default value is 1/60.void setCameraEffectsThreshold( float threshold )
Sets the threshold, which is used to detect if an object should be blurred in the HDR mode.Arguments
- float threshold - HDR threshold. If a negative value is provided, 0 will be used instead.
float getCameraEffectsThreshold( )
Returns the brightness threshold, which is used to detect if an object should be blurred in the HDR mode.Return value
HDR threshold.void setClearBufferMask( int mask )
Sets the buffer cleanup mask. This mask determines which buffers are to be cleared next time the Engine::render() is called. Thus, you can determine the contents of which buffers is to be kept, avoiding situations, when necessary data is cleared.auto render = Render::get();
render->setClearBufferMask(RenderState::BUFFER_ALL); // color, depth & stencil buffers will be cleared
render->setClearBufferMask(RenderState::BUFFER_NONE); // no buffers will be cleared (useful if you want to embed the engine somewhere)
render->setClearBufferMask(RenderState::BUFFER_DEPTH); // only the depth buffer will be cleared
// masks can be combined:
render->setClearBufferMask(BUFFER_COLOR | BUFFER_STENCIL); // color and stencil buffer will be cleared
// there is a separate BUFFER_DEPTH_STENCIL mask for convenience
render->clearBuffer(BUFFER_DEPTH_STENCIL);
Arguments
- int mask - Buffer mask: one of the RenderState::BUFFER_* variables.
int getClearBufferMask( )
Returns current buffer cleanup mask. This mask determines which buffers are to be cleared next time the Engine::render() is called. This method can be used to save current buffer cleanup mask to restore it later.Return value
Buffer mask: one of the RenderState::BUFFER_* variables.void setCloudsDownsamplingRendering( int rendering )
Sets downsampling rendering for clouds. This parameter determines clouds resolution based on current screen resolution. It has a significant impact on performance.Arguments
- int rendering - One of the following values:
- 0 - full.
- 1 - half (by default).
- 2 - quarter.
int getCloudsDownsamplingRendering( )
Returns current downsampling rendering setting for clouds. This parameter determines clouds resolution based on current screen resolution. It has a significant impact on performance.Return value
One of the following values:- 0 - full.
- 1 - half (by default).
- 2 - quarter.
void setCloudsDynamicCoverageArea( float area )
Sets dynamic coverage area for clouds. This parameter determines visibility distance for coverage of FieldWeather objects.Arguments
- float area - Dynamic coverage area, in units. The default value is 10 000.
float getCloudsDynamicCoverageArea( )
Returns current dynamic coverage area for clouds. This parameter determines visibility distance for coverage of FieldWeather objects.Return value
Dynamic coverage area, in units.void setCloudsDynamicCoverageResolution( int resolution )
Sets dynamic coverage resolution for clouds. This parameter determines the quality of dynamic coverage texture for FieldWeather objects. Higher values make it possible to preserve texture details at high distances.Arguments
- int resolution - One of the following values:
- 0 - 128 x 128.
- 1 - 256 x 256 (by default).
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
int getCloudsDynamicCoverageResolution( )
Returns current dynamic coverage resolution setting for clouds. This parameter determines the quality of dynamic coverage texture for FieldWeather objects. Higher values make it possible to preserve texture details at high distances.Return value
One of the following values:- 0 - 128 x 128.
- 1 - 256 x 256 (by default).
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
void setCloudsGroundShadows( int shadows )
Enables or disables rendering of shadows from the clouds on the ground.Arguments
- int shadows - 1 to enable rendering of shadows from the clouds on the ground, 0 to disable it. The default value is 1.
int isCloudsGroundShadows( )
Returns a value indicating if rendering of shadows from the clouds on the ground is enabled.Return value
1 if rendering of shadows from the clouds on the ground is enabled; otherwise, 0.void setCloudsInterleavedRendering( int rendering )
Enables or disables interleaved rendering mode for clouds.Arguments
- int rendering - Interleaved rendering mode for clouds:
- 0 - disabled (by default).
- 1 - 2 x 2.
- 2 - 4 x 4.
- 3 - 8 x 8.
int getCloudsInterleavedRendering( )
Returns the value indicating current interleaved rendering mode for clouds. This feature can be used to gain performance when enabled. See getCloudsInterleavedRendering().Return value
One of the following values:- 0 - disabled (by default).
- 1 - 2 x 2.
- 2 - 4 x 4.
- 3 - 8 x 8.
void setCloudsLightingConeRadius( float radius )
Sets lighting cone sampling radius for clouds lighting.Arguments
- float radius - Lighting cone radius in range [0.0f; 1.0f]. The default value is 0.3.
float getCloudsLightingConeRadius( )
Returns the current lighting cone sampling radius for clouds lighting.Return value
Lighting cone radius in range [0.0f; 1.0f].void setCloudsLightingQuality( int quality )
Sets lighting quality for clouds. This parameter determines the number of samples used to calculate lighting for clouds.Arguments
- int quality - One of the following values:
- 0 - 1 sample, low quality.
- 1 - 3 samples, medium quality (by default).
- 2 - 5 samples, high quality.
- 3 - 6 samples, ultra quality.
int getCloudsLightingQuality( )
Returns the current lighting quality setting for clouds. This parameter determines the number of samples used to calculate lighting for clouds.Return value
One of the following values:- 0 - 1 sample, low quality.
- 1 - 3 samples, medium quality (by default).
- 2 - 5 samples, high quality.
- 3 - 6 samples, ultra quality.
void setCloudsLightingTraceLength( float length )
Sets the lighting trace length for clouds. This parameter determines the maximum length of a sun ray inside a cloud.Arguments
- float length - Lighting trace length in range [1.0f; 2048.0f], in units. The default value is 230.0f.
float getCloudsLightingTraceLength( )
Returns the current lighting trace length for clouds. This parameter determines the maximum length of a sun ray inside a cloud.Return value
Lighting trace length, in units.void setCloudsNoiseIterations( float iterations )
Sets the value of the noise iterations parameter for clouds. This parameter determines the amount of jitter, that is used to reduce banding effect due to insufficient number of steps.Arguments
- float iterations - New value of the noise iterations parameter for clouds. The default value is 0.1f.
float getCloudsNoiseIterations( )
Returns the current value of the noise iterations parameter for the clouds. This parameter determines the amount of jitter, that is used to reduce banding effect due to insufficient number of steps.Return value
Current value of the noise iterations parameter for clouds. The default value is 0.1f.void setCloudsNoiseLighting( float lighting )
Sets the value of the noise lighting parameter for clouds. This parameter determines the amount of jitter for tracing steps of lighting calculation, that is used to reduce banding effect due to insufficient number of steps.Arguments
- float lighting - New value of the noise lighting parameter for clouds. The default value is 0.3f.
float getCloudsNoiseLighting( )
Returns the current value of the noise lighting parameter for the clouds. This parameter determines the amount of jitter for tracing steps of lighting calculation, that is used to reduce banding effect due to insufficient number of steps.Return value
Current value of the noise lighting parameter for clouds. The default value is 0.3f.void setCloudsNoiseStep( float step )
Sets the value of the noise step parameter for clouds. This parameter determines the amount of jitter in the areas within clouds, that is used to reduce banding effect due to insufficient number of steps.Arguments
- float step - New value of the noise step parameter for clouds. The default value is 0.3f.
float getCloudsNoiseStep( )
Returns the current value of the noise step parameter for clouds. This parameter determines the amount of jitter in the areas within clouds, that is used to reduce banding effect due to insufficient number of steps.Return value
Current value of the noise step parameter for clouds. The default value is 0.3f.void setCloudsNoiseStepSkip( float skip )
Sets the value of the noise step skip parameter for clouds. This parameter determines the amount of jitter in the areas between clouds, that is used to reduce banding effect due to insufficient number of steps.Arguments
- float skip - New value of the noise step skip parameter for clouds. The default value is 0.3f.
float getCloudsNoiseStepSkip( )
Returns the current value of the noise step skip parameter for clouds. This parameter determines the amount of jitter in the areas between clouds, that is used to reduce banding effect due to insufficient number of steps.Return value
Current value of the noise step skip parameter for clouds. The default value is 0.3f.void setCloudsSamplesCount( int count )
Sets the number of samples used for clouds rendering. The higher the value, the less noise in clouds rendering.Arguments
- int count - Number of samples:
- 0 - low.
- 1 - medium.
- 2 - high (by default).
- 3 - ultra.
int getCloudsSamplesCount( )
Returns the current number of samples used for clouds rendering. The higher the value, the less noise in clouds rendering.Return value
One of the following values:- 0 - low.
- 1 - medium.
- 2 - high (by default).
- 3 - ultra.
void setCloudsSamplingQuality( int quality )
Sets sampling quality for clouds. This parameter sets the number of noise samples that affects the cloud shape processing quality. The higher the value, the less visual artifacts.Arguments
- int quality - Sampling quality:
- 0 - low quality (higher cloud density).
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality (lower density, the clouds are softer).
int getCloudsSamplingQuality( )
Returns the current sampling quality set for clouds. This parameter sets the number of noise samples that affects the cloud shape processing quality. The higher the value, the less visual artifacts.Return value
Sampling quality:- 0 - low quality (higher cloud density).
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality (lower density, the clouds are softer).
void setCloudsShadowShafts( int shafts )
Enables or disables shadow shafts for clouds.Arguments
- int shafts - 1 to enable shadow shafts for clouds, 0 to disable. The default value is 1.
int isCloudsShadowShafts( )
Returns the value indicating if shadow shafts for clouds are enabled.Return value
1 if shadow shafts for clouds are enabled; otherwise, 0.void setCloudsSimplifiedDepthTest( int test )
Enables or disables simplified depth test for clouds.Arguments
- int test - 1 to enable simplified depth test for clouds, 0 to disable. The default value is 1.
int isCloudsSimplifiedDepthTest( )
Returns the value indicating if simplified depth test for clouds is enabled.Return value
1 if simplified depth test for clouds is enabled; otherwise, 0.void setCloudsSoftIntersection( float intersection )
Sets the soft intersection distance for clouds.Arguments
- float intersection - Soft intersection distance (in meters) within the [0.0f; 100000.0f] range. The default value is 100.0f.
float getCloudsSoftIntersection( )
Returns the current soft intersection distance for clouds.Return value
Soft intersection distance for clouds, in meters.void setCloudsTransparentOrder( int order )
Enables or disables rendering of clouds after all transparent objects (except water).Arguments
- int order - 1 to enable rendering of clouds after transparent, 0 to disable. The default value is 0.
int isCloudsTransparentOrder( )
Returns the value indicating if clouds are rendered after all transparent objects (except water).Return value
1 if clouds are rendered after transparent; otherwise, 0.void setClutterDistance( float distance )
Sets the distance, at which (and farther) objects with "clutter" flag on will not be rendered.Arguments
- float distance - Distance, in units.
float getClutterDistance( )
Returns a distance, at which (and farther) objects with "clutter" flag on will not be rendered.Return value
Distance, in units.void setColorBrightness( float brightness )
Sets the current brightness of the scene.Arguments
- float brightness - Brightness. The provided value is saturated in the range [-1.0f; 1.0f].
float getColorBrightness( )
Returns the current overall brightness of the scene.Return value
Current brightness.void setColorContrast( float contrast )
Sets the current contrast of the scene.Arguments
- float contrast - Contrast. The provided value is saturated in the range [-1.0f; 1.0f].
float getColorContrast( )
Returns the current overall contrast of the scene.Return value
Current contrast.void setColorGamma( float gamma )
Sets the current gamma of the scene.Arguments
- float gamma - Gamma. The provided value is saturated in the range [0.5f; 1.5f].
float getColorGamma( )
Returns the current overall gamma of the scene.Return value
Current gamma.void setColorSaturation( float saturation )
Sets the current saturation of the scene.Arguments
- float saturation - Saturation. The provided value is saturated in the range [0.0f; 2.0f].
float getColorSaturation( )
Returns the current overall saturation of the scene.Return value
Current saturation.int setColorTextureImage( const Ptr<Image> & image )
Sets a new color transformation image (LUT). This function resets a LUT texture name to null if it has been previously set via setColorTextureName().ImagePtr lut;
ImagePtr lut_0;
ImagePtr lut_1;
if (!lut) {
lut = Image::create();
lut_0 = Image::create("unigine_project/textures/lookup_first.dds");
lut_1 = Image::create("unigine_project/textures/lookup_second.dds");
}
float k = sin(Game::get()->getTime() * 2.0f) * 0.5f + 0.5f;
lut->copy(lut_0,0);
lut->blend(lut_1, 0, 0, 0, 0, lut->getWidth(), lut->getHeight(), k);
Render::get()->setColorTextureImage(lut);
Arguments
- const Ptr<Image> & image - Color transformation image.
Return value
1 if the image is set successfully; otherwise, 0.int getColorTextureImage( const Ptr<Image> & image )
Return the current color transformation image (LUT).Arguments
- const Ptr<Image> & image - Image to store the color transformation texture in.
Return value
1 if an image is successfully received; otherwise, 0.void setColorTextureName( const char * name )
Sets the name of a new color transformation texture (LUT).Arguments
- const char * name - Name of the file with the texture. If NULL (0) is passed, the texture is cleared.
const char * getColorTextureName( )
Returns the name of the current color transformation texture (LUT).Return value
Name of the current color transformation texture.void setColorWhite( const Math::vec4 & white )
Sets the current white balance of the scene.Arguments
- const Math::vec4 & white - White balance. The provided value is saturated in the range [vec4_epsilon;vec4_one].
Math::vec4 getColorWhite( )
Returns the current white balance of the scene.Return value
Current white balance.void setCompositeMaterial( const char * material )
Sets a custom composite material that specifies a custom shader used for the final composition of the full-screen image instead of the default one.Arguments
- const char * material - Composite material name.
const char * getCompositeMaterial( )
Returns a name of the current composite material that specifies a custom shader used for the final composition of the full-screen image instead of the default one.Return value
Name of the current composite material.void setCross( int cross )
Enables or disables cross flares.Arguments
- int cross - 1 to enable cross flares, 0 to disable.
int isCross( )
Returns a value indicating if cross flares are enabled.Return value
1 if cross flares are enabled; otherwise, 0.void setCrossAngle( float angle )
Sets the cross flares orientation angle.Arguments
- float angle - Angle in degrees.
float getCrossAngle( )
Returns the cross flares orientation angle.Return value
Angle between flare shafts in degrees.void setCrossColor( const Math::vec4 & color )
Sets the color of the cross flares.Arguments
- const Math::vec4 & color - Color of cross flares.
Math::vec4 getCrossColor( )
Returns the color of the cross flares.Return value
Color of the cross flares.void setCrossLength( float length )
Sets the length of a cross flare. Increasing this value also leads to fading of the shafts across their length.Arguments
- float length - Length of a cross flare relative to the screen width.
float getCrossLength( )
Returns the length of a cross flare.Return value
Length of a cross flare relative to the screen width.void setCrossScale( float scale )
Sets a multiplier for color of cross flares.Arguments
- float scale - Cross color scale. If a negative value is provided, 0 will be used instead.
float getCrossScale( )
Returns the current multiplier for color of cross flares.Return value
Cross color scale.void setCrossShafts( int shafts )
Sets the number of shafts in a cross flare.- The minimum number of shafts is 2.
- The maximum number of shafts is 32 (high number of flares can cause FPS drop on low-performance hardware).
Arguments
- int shafts - The number of a cross flares. The provided value is saturated in the range [2; 32].
int getCrossShafts( )
Returns the number of shafts in a cross flare.- The minimum number of shafts is 2.
- The maximum number of shafts is 32 (high number of flares can cause FPS drop on low-performance hardware).
Return value
Number of cross flares.void setCrossThreshold( float threshold )
Sets the brightness threshold for areas to produce flare: the higher the threshold value, the brighter the area should be to produce a flare.Arguments
- float threshold - Cross flares threshold.
float getCrossThreshold( )
Returns the current brightness threshold for areas to produce flare.Return value
Cross flares threshold.void setData( const char * data )
Sets user data associated with the render. This string is written directly into a *.world file. Namely, into the data child tag of the render tag, for example:<world version="1.21">
<render>
<data>User data</data>
</render>
</world>
Arguments
- const char * data - New user data. The data can contain an XML formatted string.
const char * getData( )
Returns user data associated with the render. This string is written directly into a *.world file. Namely, into the data child tag of the render tag, for example:<world version="1.21">
<render>
<data>User data</data>
</render>
</world>
Return value
User data. The data can contain an XML formatted string.void setDebug( int debug )
Enables or disables rendering of debug materials (the debug_materials material). Debug materials can be used for debugging of image generation stages. For example, you can render only SSR, or only cubemaps and so on.Arguments
- int debug - 1 to enable rendering of debug materials, 0 to disable it. The default value is 0.
int isDebug( )
Returns the value indicating whether debug materials (the debug_materials material) are rendered or not. Debug materials can be used for debugging of image generation stages.Return value
1 if debug materials are rendered; otherwise, 0.void setDebugMaterials( const char * materials )
Updates the list of debug materials to be rendered.Arguments
- const char * materials - List of debug materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").
const char * getDebugMaterials( )
Returns the list of debug materials to be rendered as a string constant.Return value
List of debug materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").void setDecalDistance( float distance )
Sets the distance, at which (and farther) decals will not be rendered.Arguments
- float distance - Distance in units.
float getDecalDistance( )
Returns the distance, at which (and farther) decals will not be rendered.Return value
Distance in units.void setDecals( int decals )
Enables or disables rendering of decals.Arguments
- int decals - 1 to enable rendering of decals, 0 to disable it. The default value is 1.
int isDecals( )
Returns the value indicating if rendering of decals is enabled.Return value
1 if rendering of decals is enabled; otherwise, 0.void setDeferredMaterial( const char * material )
Updates the list of materials that will be used on the Deferred Composite stage of rendering sequence. A debug material can be put here in order to be added to the final image.Arguments
- const char * material - List of composite deferred materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").
const char * getDeferredMaterial( )
Returns the list of materials that are used on the Deferred Composite stage of rendering sequence.Return value
List of deferred materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").void setDirtScale( float scale )
Sets the scale of lens dirt effect modulating the pattern of lens flares. For example, it can be used to create an effect of unclean optics when the camera looks at the sun.Arguments
- float scale - Dirt scale value within the [0.0f; 1.0f] range. The default value is 0.5f.
float getDirtScale( )
Returns the scale of lens dirt effect modulating the pattern of lens flares.Return value
Dirt scale value within the [0.0f; 1.0f] range.void setDirtTextureName( const char * name )
Sets the texture that modulates the pattern of lens flares. For example, it can be used to create an effect of unclean optics when the camera looks at the sun.Arguments
- const char * name - Name of the lens flares modulation texture.
const char * getDirtTextureName( )
Returns the name of the current texture that modulates the pattern of lens flares. For example, it can be used to create an effect of light reflections or unclean optics when the camera looks at the sun.Return value
Name of the lens flares modulation texture.void setDistanceScale( float scale )
Sets the global distance scale for all distance parameters: shadow distance, light distance, LOD distances, etc.Arguments
- float scale - Global distance scale.
float getDistanceScale( )
Returns the current global distance scale for all distance parameters: shadow distance, world lights shadows, LOD distances, etc.Return value
Global distance scale.void setDOF( int dof )
Enables or disables the DOF (Depth Of Field) effect.Arguments
- int dof - 1 to enable the DOF effect, 0 to disable it. The default value is 0.
int isDOF( )
Returns the value indicating if the DOF (Depth Of Field) effect is enabled.Return value
1 if the DOF effect is enabled; otherwise, 0.void setDOFBlur( float blur )
Sets the intensity of blur for the DOF (Depth Of Field) effect.Arguments
- float blur - DOF blur intensity value. The default value is 1.0f.
float getDOFBlur( )
Returns the intensity of blur for the DOF (Depth Of Field) effect.Return value
DoF blur intensity value.void setDOFBokehMode( int mode )
Sets the shape of the Bokeh for the DOF effect. This parameter determines the way the lens renders out-of-focus points of light.Arguments
- int mode - The Bokeh shape:
- 0 - ring (by default).
- 1 - circle.
int getDOFBokehMode( )
Returns the current shape of the Bokeh for the DOF effect. This parameter determines the way the lens renders out-of-focus points of light.Return value
The Bokeh shape:- 0 - ring (by default).
- 1 - circle.
void setDOFChromaticAberration( float aberration )
Sets the intensity of chromatic aberration for the DOF (Depth Of Field) effect.Arguments
- float aberration - DOF chromatic aberration intensity value. The default value is 0.0f.
float getDOFChromaticAberration( )
Returns the intensity of chromatic aberration for the DOF (Depth Of Field) effect.Return value
DOF chromatic aberration intensity value.void setDOFFarDistance( float distance )
Sets the far DOF limit of the camera: the distance between the camera and the furthest element that is considered to be acceptably sharp. Black zone on the DOF mask means in-focus zone.Arguments
- float distance - Far DOF limit value in units.
float getDOFFarDistance( )
Returns the far DOF limit of the camera: the distance between the camera and the furthest element that is considered to be acceptably sharp. Black zone on the DOF mask means in-focus zone.Return value
Far DOF limit value in units.void setDOFFarFocalOffset( float offset )
Sets the offset from the focal to the farthest blurred zone for the DOF effect. In other words, the distance when background (far) is in focus.Arguments
- float offset - Far DOF focal offset value in units.
float getDOFFarFocalOffset( )
Returns the offset from the focal to the farthest blurred zone. In other words, the distance when background (far) is in focus.Return value
Far DOF focal offset value in units.void setDOFFocalDistance( float distance )
Sets the focal distance of the camera, i.e. a point where objects are in-focus and visible clearly.Arguments
- float distance - Focal distance in units. If a negative value is provided, 0 will be used instead.
float getDOFFocalDistance( )
Returns the focal distance of the camera, i.e. a point where objects are in-focus and visible clearly.Return value
Focal distance in units.void setDOFFocusImprovement( int improvement )
Enables or disables focus improvement for the DOF (Depth Of Field) effect. When enabled, transitions between the focused and unfocused parts of the scene become more accurate.Arguments
- int improvement - 1 to enable focus improvement for the DOF effect, 0 to disable it. The default value is 0.
int isDOFFocusImprovement( )
Returns a value indicating if the focus improvement option is enabled for the DOF (Depth Of Field) effect. When enabled, transitions between the focused and unfocused parts of the scene become more accurate.Return value
1 if focus improvement is enabled for the DOF effect; otherwise, 0.void setDOFIncreasedAccuracy( int accuracy )
Enables or disables increased accuracy for the DOF (Depth Of Field) effect. Enabling the parameter allows for increasing accuracy of focusing calculation.Arguments
- int accuracy - 1 to enable increased accuracy for the DOF effect, 0 to disable it. The default value is 0.
int isDOFIncreasedAccuracy( )
Returns a value indicating if the increased accuracy option is enabled for the DOF (Depth Of Field) effect. When enabled, focusing calculation is performed with increased accuracy.Return value
1 if increased accuracy is enabled for the DOF effect; otherwise, 0.void setDOFNearDistance( float distance )
Sets the near DOF limit of the camera: the distance between the camera and the first element that is considered to be acceptably sharp. Black zone on the DOF mask means in-focus zone.Arguments
- float distance - Near DOF limit value in units.
float getDOFNearDistance( )
Returns the near DOF limit of the camera: the distance between the camera and the first element that is considered to be acceptably sharp. Black zone on the DOF mask means in-focus zone.Return value
Near DOF limit value in units.void setDOFNearFocalOffset( float offset )
Sets the offset from the focal to the nearest blurred zone. In other words, the distance when foreground (far) is in focus.Arguments
- float offset - Near DOF focal offset value in units.
float getDOFNearFocalOffset( )
Returns the offset from the focal to the nearest blurred zone. In other words, the distance when foreground (far) is in focus.Return value
Near DOF focal offset value in units.void setDOFQuality( int quality )
Sets the quality of the DOF (Depth Of Field) effect.Arguments
- int quality - The value indicating quality of the DOF effect:
- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
int getDOFQuality( )
Returns the value indicating the quality of the DOF (Depth Of Field) effect.Return value
The value indicating quality of the DOF effect:- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
void setDOFResolution( int resolution )
Sets the resolution of the DOF (Depth Of Field) effect.Arguments
- int resolution - Resolution of the DOF effect:
- 0 - quarter resolution.
- 1 - half resolution.
- 2 - full resolution (by default).
int getDOFResolution( )
Returns the resolution of the DOF (Depth Of Field) effect.Return value
Resolution of the DOF effect:- 0 - quarter resolution.
- 1 - half resolution.
- 2 - full resolution (by default).
void setEnabled( int arg1 )
Enables or disables the render.Arguments
- int arg1 - 1 to enable the render, 0 to disable it.
int isEnabled( )
Returns a value indicating if the render is enabled.Return value
1 if the render is enabled; otherwise, 0.void setEnvironment( int environment )
Enables or disables rendering of environment of the scene.Arguments
- int environment - 1 to enable rendering of environment, 0 to disable it. The default value is 1.
int isEnvironment( )
Returns the value indicating if rendering of environment of the scene is enabled.Return value
1 rendering of environment is enabled; otherwise, 0.void setEnvironmentCubemapBlendMode( int mode )
Sets the environment cubemap blending mode.Arguments
- int mode - Cubemap blending mode:
- 0 - alpha blend (by default).
- 1 - additive blend.
- 2 - multiply.
- 3 - overlay.
int getEnvironmentCubemapBlendMode( )
Returns the current environment cubemap blending mode.Return value
Cubemap blending mode:- 0 - alpha blend (by default).
- 1 - additive blend.
- 2 - multiply.
- 3 - overlay.
void setEnvironmentHazeMode( int mode )
Sets the mode for the haze effect.Arguments
- int mode - Haze mode: one of the HAZE_* variables.
int getEnvironmentHazeMode( )
Returns the current mode set for the haze effect.Return value
Haze mode: one of the HAZE_* variables.void setExposure( float exposure )
Sets the camera exposure (a multiplier of the scene luminance and brightness). It determines the resulting amount of luminance:- By the minimum value of 0.0f, the image is rendered black.
- The higher the value, the more luminance and the brighter the scene lit.
Arguments
- float exposure - Multiplier of the scene luminance and brightness.
float getExposure( )
Returns the current camera exposure (a multiplier of the scene luminance and brightness.). It determines the resulting amount of luminance:- By the minimum value of 0.0f, the image is rendered black.
- The higher the value, the more luminance and the brighter the scene lit.
Return value
Current multiplier of the scene luminance and brightness.void setExposureAdaptation( float adaptation )
Sets the time for the camera to adjust exposure. If 0.0f is set, instant adaptation will be used.Arguments
- float adaptation - Period of exposure adaptation in seconds. If a too small or even negative value is provided, 1E-6 will be used instead.
float getExposureAdaptation( )
Returns the current the time set for the camera to adjust exposure. If the 0.0f is returned, it means that instant adaptation is used.Return value
Period of exposure adaptation in seconds.float getExposureInterpolation( )
Returns the current exposure interpolation (the engine ifps multiplied by the exposure adaptation speed). The method can be used for automatic exposure adaptation.Return value
Exposure interpolation.void setExposureMaxLuminance( float luminance )
Sets the maximum luminance offset relative to the default luminance of the scene used for rendering of adaptive exposure effect: the lower the value, the brighter the adapted image will be. The parameter can take on negative values.Arguments
- float luminance - Maximum luminance. The provided value is saturated in the range [-10.0f; 10.0f].
float getExposureMaxLuminance( )
Returns the maximum luminance offset relative to the default luminance of the scene used for rendering of adaptive exposure effect: the lower the value, the brighter the adapted image is.Return value
Maximum luminance.void setExposureMinLuminance( float luminance )
Sets the minimum luminance offset relative to the default luminance of the scene used for rendering of adaptive exposure effect: the higher the value, the darker the adapted image will be. The parameter can take on negative values.Arguments
- float luminance - Minimum luminance. The provided value is clamped to the range [-10.0f; 10.0f].
float getExposureMinLuminance( )
Returns the minimum luminance offset relative to the default luminance of the scene used for rendering of adaptive exposure effect: the higher the value, the darker the adapted image is.Return value
Minimum luminance.void setExposureMode( int mode )
Sets the mode of the adaptive exposure effect.Arguments
- int mode - The value indicating the exposure mode:
- 0 - a static exposure. The amount of luminance is determined by the setExposure().
- 1 - adaptive logarithmic mapping technique.
- 2 - adaptive quadratic mapping technique.
int getExposureMode( )
Returns current adaptive exposure mode:- 0 - a static exposure. The amount of luminance is determined by the setExposure().
- 1 - adaptive logarithmic mapping technique.
- 2 - adaptive quadratic mapping technique.
Return value
The type of the exposure mode.void setFadeColor( const Math::vec4 & color )
Sets the current fade color for the scene on the screen. By gradually changing this value it is possible to create "fade in" and "fade out" effects depending on the w component of the given vector. For example, when the following vectors are passed the result will be:- vec4(1,1,1,1) - a fully white screen. Positive w results in additive blending.
- vec4(0.5,0.5,0.5,1) - light colors on the screen.
- vec4(1,0,0,1) - R channel for all screen colors is to its maximum; G and B without changes.
- vec4(0,0,0,0) - there is no fading (no color alterations are done to the screen).
- vec4(1,1,1,-1) - a fully black screen. Negative w results in scene colors * (1 - RGB), where RGB is the first three components of the passed vector.
- vec4(0.5,0.5,0.5,-1) - dark colors on the screen.
Arguments
- const Math::vec4 & color - Fade color for the scene on the screen. The provided vector represents RGB channel values (first three components) and a fading coefficient (w component). All components are saturated in the range [-1; 1].
Math::vec4 getFadeColor( )
Returns the current fade color of the scene.Return value
The current fade color.void setFieldDistance( float distance )
Sets the distance, at which (and farther) Field nodes will not be rendered.Arguments
- float distance - Distance in units.
float getFieldDistance( )
Returns the distance, at which (and farther) Field nodes will not be rendered.Return value
Distance in units.void setFieldHeightResolution( int resolution )
Sets the resolution of the FieldHeight.Arguments
- int resolution - One of the following values:
- 0 - 128 x 128.
- 1 - 256 x 256.
- 2 - 512 x 512 (by default).
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
int getFieldHeightResolution( )
Returns the value indicating the resolution of the FieldHeight.Return value
One of the following values:- 0 - 128 x 128.
- 1 - 256 x 256.
- 2 - 512 x 512 (by default).
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
void setFieldPrecision( int precision )
Sets the precision of textures used for field objects.Arguments
- int precision - Textures' precision:
- 0 - 16-bit precision R16 texture (by default).
- 1 - 32-bit precision R32F texture.
int isFieldPrecision( )
Returns the value indicating the current precision of textures used for field objects.Return value
Textures' precision:- 0 - 16-bit precision R16 texture (by default).
- 1 - 32-bit precision R32F texture.
void setFieldShorelineResolution( int resolution )
Set resolution of the texture into which all textures set for all FieldShoreline objects are rendered.Arguments
- int resolution - General FieldShoreline texture resolution:
- 0 - 128 x 128 (by default).
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
int getFieldShorelineResolution( )
Returns resolution of the texture into which all textures set for all FieldShoreline objects are rendered.Return value
General FieldShoreline texture resolution:- 0 - 128 x 128 (by default).
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
void setFilmic( int filmic )
Enables or disables the filmic tonemapping effect.Arguments
- int filmic - 1 to enable the filmic tonemapping effect, 0 to disable it. The default value is 1.
int isFilmic( )
Returns a value indicating if the filmic tonemapping effect is enabled.Return value
1 if the filmic tonemapping effect is enabled; otherwise, 0.void setFilmicLinearAngle( float angle )
Sets the Linear Angle filmic tonemapping parameter value. This parameter controls the slope of the linear part of the tone mapping curve.Arguments
- float angle - Linear Angle value.
float getFilmicLinearAngle( )
Returns the current Linear Angle filmic tone mapping parameter value. This parameter controls the slope of the linear part of the tone mapping curve.Return value
Linear Angle value.void setFilmicLinearScale( float scale )
Sets the Linear Strength filmic tonemapping parameter value that is used to change gray values. The Linear Scale controls the length of the tone mapping curve linear part.Arguments
- float scale - Linear Strength value.
float getFilmicLinearScale( )
Returns the current Linear Strength filmic tone mapping parameter value that is used to change gray values. The Linear Scale controls the length of the tone mapping curve linear part.Return value
Linear Strength value.void setFilmicShoulderScale( float scale )
Sets the Shoulder Strength filmic tonemapping parameter value that is used to change bright values.Arguments
- float scale - Shoulder Strength value.
float getFilmicShoulderScale( )
Returns the current Shoulder Strength filmic tonemapping parameter value that is used to change bright values.Return value
Shoulder Strength value.void setFilmicToeDenominator( float denominator )
Sets the Toe Denominator filmic tonemapping parameter value.Arguments
- float denominator - Toe Denominator value.
float getFilmicToeDenominator( )
Returns the current Toe Denominator filmic tonemapping parameter value.Return value
Toe Denominator value.void setFilmicToeNumerator( float numerator )
Sets the Toe Numerator filmic tonemapping parameter value.Arguments
- float numerator - Toe Numerator value.
float getFilmicToeNumerator( )
Sets the Toe Numerator filmic tonemapping parameter value.Return value
Toe Numerator value.void setFilmicToeScale( float scale )
Sets the Toe Scale filmic tonemapping parameter value that is used to change dark values. The Toe Scale controls the slope of the tone mapping curve toe (the area of underexposure).Arguments
- float scale - Toe scale value.
float getFilmicToeScale( )
Returns the current Toe Scale filmic tonemapping parameter value that is used to change dark values. The Toe Scale controls the slope of the tone mapping curve toe (the area of underexposure).Return value
Toe scale value.void setFilmicWhiteLevel( float level )
Sets the Linear White Point filmic tonemapping parameter value, which is mapped as pure white in the resulted image.Arguments
- float level - Linear White Point value.
float getFilmicWhiteLevel( )
Returns the current Linear White Point filmic tonemapping parameter value.Return value
Linear White Point value.void setFirstFrame( int frame )
Sets a value indicating if the first frame should be enabled over the current frame.Arguments
- int frame - 1 to enable the first frame flag, 0 - to disable.
int isFirstFrame( )
Returns a value indicating if the first frame is enabled over the current frame.Return value
1 if the first frame flag is enabled; otherwise, 0.int isFlipped( )
Checks render orientation.TexturePtr texture;
TexturePtr texture_2;
float uv_x, uv_y;
//...
float flip_sign = (Render::get()->isFlipped() ? -1.0f : 1.0f);
float translate_x = 2.0f * uv_x - 1.0f;
float translate_y = flip_sign * (2.0f * uv_y - 1.0f);
float scale_x = texture->getWidth() / texture_2->getWidth();
float scale_y = texture->getHeight() / texture_2->getHeight();
Math::mat4 transform = Math::translate(translate_x, translate_y, 0.0f) * Math::scale(scale_x, scale_y, 1.0f);
Return value
1 if the render is flipped; otherwise, 0.void setFXAAIntensity( float intensity )
Sets the intensity of the FXAA. Intensity specifies the sample offset of FXAA fragment. The higher the value, the more blurred image will be.Arguments
- float intensity - Intensity value of the FXAA to be set.
float getFXAAIntensity( )
Returns the intensity value of the FXAA. Intensity specifies the sample offset of FXAA fragment.Return value
Intensity value of the FXAAvoid setGbufferLightmap( int lightmap )
Enables or disables storing lightmap data in the GBuffer.Arguments
- int lightmap - 1 to enable storing lightmap data in the GBuffer, 0 to disable it. The default value is 1.
int isGbufferLightmap( )
Returns a value indicating if lightmap data is stored in the GBuffer.Return value
1 if lightmap data is stored in the GBuffer; otherwise, 0.int getGPUMemory( )
Returns an amount of memory provided by the current GPU.Return value
Amount of memory in Mbytes.int getGPUName( )
Returns the name of the current GPU.Return value
GPU name flag.Ptr<Texture> getGray2DArrayTexture( )
Returns gray 2D array texture.Return value
Gray 2D array texture.Ptr<Texture> getGray2DTexture( )
Returns gray 2D texture.Return value
Gray 2D texture.Ptr<Texture> getGray3DTexture( )
Returns gray 3D texture.Return value
Gray 3D texture.Ptr<Texture> getGrayCubeTexture( )
Returns gray Cube texture.Return value
Gray Cube texture.void setLens( int lens )
Enables or disables lens flares.Arguments
- int lens - Positive integer to enable lens flares, 0 to disable.
int isLens( )
Returns a value indicating if lens flares are enabled.Return value
Positive integer if lens flares are enabled; otherwise, 0.void setLensColor( const Math::vec4 & color )
Sets the color of a lens flares.Arguments
- const Math::vec4 & color - Color of lens flares.
Math::vec4 getLensColor( )
Returns the color of a lens flare.Return value
Color of a lens flare.void setLensDispersion( const Math::vec3 & dispersion )
Sets the color displacement for red, green, and blue channels of the lens flares. Can be used to create light dispersion (chromatic aberrations).Arguments
- const Math::vec3 & dispersion - Lens dispersion displacement per channel. If a negative value is set for a channel, 0 will be used instead.
Math::vec3 getLensDispersion( )
Returns the current color displacement for red, green and blue channels of the lens flares. Can be used to create light dispersion (chromatic aberrations).Return value
Lens dispersion displacement per channel.void setLensLength( float length )
Sets a length indicating if the whole radial lens flare is rendered on the screen or only a part of it. This option controls how lens flares pattern is distributed.Arguments
- float length - Length of the radial lens flare. The provided value is saturated in the range [0.0f; 1.0f].
float getLensLength( )
Returns the current length indicating if the whole radial lens flare is rendered on the screen or only a part of it. This option controls how lens flares pattern is distributed.Return value
Length of the lens flare.void setLensRadius( float radius )
Sets a radius of the spherical lens flares on the screen.Arguments
- float radius - Radius of the spherical lens flares. The provided value is saturated in the range [0.0f; 1.0f], where 1.0f is a screen-wide radius (a lens flare is not visible).
float getLensRadius( )
Returns the current radius of the spherical lens flares on the screen.Return value
Radius of the spherical lens flares.void setLensScale( float scale )
Sets the multiplier for color of HDR lens flares.Arguments
- float scale - Lens color scale. If a negative value is provided, 0.0f will be used instead.
float getLensScale( )
Returns the current multiplier for color of HDR lens flares.Return value
Lens color scale.void setLensThreshold( float threshold )
Sets the brightness threshold for lens flares.Arguments
- float threshold - Lens flares threshold.
float getLensThreshold( )
Returns the current brightness threshold for lens flares.Return value
Lens flares threshold.void setLightDistance( float distance )
Sets the distance, at which (and farther) dynamic lights will not be rendered.Arguments
- float distance - Distance in units.
float getLightDistance( )
Returns the distance, at which (and farther) dynamic lights will not be rendered.Return value
Distance in units.void setLightsForwardPerObjectEnv( int env )
Sets the maximum number of environment probes per object (available only for materials rendered in the forward rendering pass). You should set the nonzero value to increase performance: it is recommended to use not more than 4 environment probes per object.Arguments
- int env - Maximum number of environment probes per object within the [0; 128] range. The default value is 4.
int getLightsForwardPerObjectEnv( )
Returns the current maximum number of environment probes per object (available only for materials rendered in the forward rendering pass).Return value
Maximum number of environment probes per object within the [0; 128] range.void setLightsForwardPerObjectOmni( int omni )
Sets the maximum number of omni lights per object (available only for materials rendered in the forward rendering pass). You should set the nonzero value to increase performance: it is recommended to use not more than 4 omni lights per object.Arguments
- int omni - Maximum number of omni lights per object within the [0; 128] range. The default value is 4.
int getLightsForwardPerObjectOmni( )
Returns the current maximum number of omni lights per object (available only for materials rendered in the forward rendering pass).Return value
Maximum number of omni lights per object within the [0; 128] range.void setLightsForwardPerObjectProj( int proj )
Sets the maximum number of projected lights per object (available only for materials rendered in the forward rendering pass). You should set the nonzero value to increase performance: it is recommended to use not more than 4 projected lights per object.Arguments
- int proj - Maximum number of projected lights per object within the [0; 128] range. The default value is 4.
int getLightsForwardPerObjectProj( )
Returns the current maximum number of projected lights per object (available only for materials rendered in the forward rendering pass).Return value
Maximum number of projected lights per object within the [0; 128] range.void setLightsForwardPerObjectVoxel( int voxel )
Sets the maximum number of voxel probes per object (available only for materials rendered in the forward rendering pass). You should set the nonzero value to increase performance: it is recommended to use not more than 4 projected lights per object.Arguments
- int voxel - Maximum number of voxel probes per object within the [0; 128] range.
int getLightsForwardPerObjectVoxel( )
Returns the current maximum number of voxel probes per object (available only for materials rendered in the forward rendering pass).Return value
Maximum number of voxel probes per object within the [0; 128] range.void setLightsForwardPerObjectWorld( int world )
Sets the maximum number of world lights per object (available only for materials rendered in the forward rendering pass). You should set the nonzero value to increase performance: it is recommended to use not more than 4 world lights per object.Arguments
- int world - Maximum number of world lights per object within the [0; 128] range. The default value is 4.
int getLightsForwardPerObjectWorld( )
Returns the current maximum number of world lights per object (available only for materials rendered in the forward rendering pass).Return value
Maximum number of world lights per object within the [0; 128] range.void setLightsInterleaved( int interleaved )
Sets a value indicating if interleaved mode for rendering lights during the deferred pass is enabled. When enabled, lights are rendered in half resolution with subsequent reconstruction of neighboring pixels using the data from previous frames. This mode requires a high framerate (60+ FPS), otherwise anti-aliasing quality reduces and ghosting effect becomes more pronounced. Recommended for relatively static scenes which contain a lot of light sources and do not have a lot of reflective surfaces (in case of small number of light sources may reduce performance).Arguments
- int interleaved - 1 to enable interleaved lights rendering mode, 0 to disable it.
int isLightsInterleaved( )
Returns a value indicating if interleaved mode for rendering lights during the deferred pass is enabled.Return value
1 if interleaved lights rendering mode is enabled; otherwise, 0.void setLightsInterleavedCatmullResampling( int resampling )
Sets a value indicating if the Catmull-Rom resampling for interleaved lights rendering mode is enabled. This mode allows you to reduce image blurring when the camera moves forward/backward.Arguments
- int resampling - 1 to enable the Catmull-Rom resampling for interleaved lights rendering mode, 0 to disable it.
int isLightsInterleavedCatmullResampling( )
Returns a value indicating if the Catmull-Rom resampling for interleaved lights rendering mode is enabled.Return value
1 if the Catmull-Rom resampling for interleaved lights rendering mode is enabled; otherwise, 0.void setLightsInterleavedColorClamping( int clamping )
Sets the color clamping mode to be used for interleaved lights rendering mode. This mode is used to reduce ghosting effect: higher values increase clamping intensity but may cause flickering on rippled reflective surfaces (as this mode is not so good at object's edges). When disabled, shadows and reflections have a lag as they are several frames behind. To improve the result near the edges of objects can be used together with the fix ghosting option.Arguments
- int clamping - Color clamping mode to be used, one of the following values:
- 0 - color clamping is disabled
- 1 - low clamping
- 2 - medium clamping
- 3 - high clamping
int getLightsInterleavedColorClamping( )
Returns the current color clamping mode used for interleaved lights rendering mode.Return value
Current color clamping mode, one of the following values:- 0 - color clamping is disabled
- 1 - low clamping
- 2 - medium clamping
- 3 - high clamping
void setLightsInterleavedFixGhosting( int ghosting )
Sets a value indicating if the fix ghosting option for interleaved lights rendering mode is enabled. Can be used to reduce ghosting effect near the edges of objects. This option does not affect ghosting of shadows and reflections, to improve the result it can be used together with color clamping. May cause flickering near edges of objects and has a more significant impact on performance than the color clamping option.Arguments
- int ghosting - 1 to enable the fix ghosting option for interleaved lights rendering mode, 0 to disable it.
int isLightsInterleavedFixGhosting( )
Returns a value indicating if the fix ghosting option for interleaved lights rendering mode is enabled.Return value
1 if the fix ghosting option for interleaved lights rendering mode is enabled; otherwise, 0.void setLightsLensFlares( int flares )
Enables or disables rendering of per-light lens flares.Arguments
- int flares - 1 to enable rendering of per-light lens flares, 0 to disable it. The default value is 1.
int isLightsLensFlares( )
Returns the value indicating if rendering of per-light lens flares is enabled.Return value
1 if rendering of per-light lens flares is enabled; otherwise, 0.void setLightsMaxPerBatch( int batch )
Sets the maximum number of lights rendered by a tile per batch call. With lights batching optimization, omni lights divided into tiles are rendered in batches: each tile renders the specified number of lights per batch. It allows decreasing the number of DIP calls and increasing performance. The optimization works only for omni lights with point shape and without shadows.Arguments
- int batch - Maximum number of lights per batch within the [0; 1024] range. The default value is 1024.
0 disables batching optimization.
int getLightsMaxPerBatch( )
Returns the current maximum number of lights rendered by a tile per batch call. With lights batching optimization, omni lights divided into tiles are rendered in batches: each tile renders the specified number of lights per batch. It allows decreasing the number of DIP calls and increasing performance. The optimization works only for omni lights with point shape and without shadows.Return value
Maximum number of lights per batch within the [0; 1024] range.void setLightsTileGridSize( int size )
Sets the number of grid tiles per axis for tiled rendering optimization. During this optimization, the screen space is divided into tiles that render lights in batches. The optimization works only for omni lights with point shape and without shadows.Arguments
- int size - Number of grid tiles per axis within the [1; 32] range. The default value is 8.
int getLightsTileGridSize( )
Returns the current number of grid tiles per axis for tiled rendering optimization. During this optimization, the screen space is divided into tiles that render lights in batches. The optimization works only for omni lights with point shape and without shadows.Return value
Number of grid tiles per axis within the [1; 32] range.int getMaxFieldAnimations( )
Returns the maximum limit of FieldAnimation nodes allowed to be used in shaders.Return value
Maximum number of FieldAnimation nodes allowed.int getMaxFieldHeights( )
Returns the maximum limit of FieldHeight nodes allowed to be used in shaders.Return value
Maximum number of FieldHeight nodes allowed.int getMaxFieldShorelines( )
Returns the maximum limit of FieldShoreline nodes allowed to be used in shaders.Return value
Maximum number of FieldShoreline nodes allowed.int getMaxFieldSpacers( )
Returns the maximum limit of FieldSpacer nodes allowed to be used in shaders.Return value
Maximum number of FieldSpacer nodes allowed.void setMotionBlur( int blur )
Enables or disables the motion blur effect.Arguments
- int blur - 1 to enable the motion blur effect, 0 to disable it. The default value is 1.
int isMotionBlur( )
Returns a value indicating if the motion blur effect is enabled.Return value
1 if the motion blur effect is enabled; otherwise, 0.void setMotionBlurCameraVelocity( int velocity )
Sets a value indicating if camera velocity contributes to the motion blur effect.Arguments
- int velocity - 1 to take camera velocity into account in the motion blur effect; 0 to take into account velocities of objects only.
int isMotionBlurCameraVelocity( )
Returns a value indicating if camera velocity contributes to the motion blur effect.Return value
1 camera velocity contributes to the motion blur effect; 0 only velocities of objects are taken into account in the motion blur effect.void setMotionBlurMaxVelocity( float velocity )
Sets the maximum possible amount of motion blur for moving physical objects. When their body velocity exceeds the set value, they will be blurred as if they have the maximum velocity set by the parameter. This parameter should be used:- To avoid excessive blurring of fast moving objects.
- To save performance, as increasing the object's velocity leads increasing the radius of the motion blur effect that drops performance at too high values.
Arguments
- float velocity - Maximum scaled velocity of moving physical bodies used for the motion blur effect.
float getMotionBlurMaxVelocity( )
Returns the current maximum possible amount of motion blur for moving physical objects.Return value
Maximum scaled velocity of moving physical bodies used for the motion blur effect.void setMotionBlurNeatSilhouettes( int silhouettes )
Enables or disables the neat silhouettes option for motion blur. This option keeps contours of objects in front of the camera unblurred.Arguments
- int silhouettes - 1 to enable the neat silhouettes option for motion blur, 0 to disable it. The default value is 1.
int isMotionBlurNeatSilhouettes( )
Returns a value indicating if neat silhouettes option for motion blur is enabled. This option keeps contours of objects in front of the camera unblurred.Return value
1 if the neat silhouettes option is enabled; otherwise, 0.void setMotionBlurNoiseIntensity( float intensity )
Sets the intensity of the noise used in the motion blur.Arguments
- float intensity - Noise intensity value within the [0.0f; 1.0f] range. The default value is 0.25f.
float getMotionBlurNoiseIntensity( )
Returns the current intensity of the noise used in the motion blur.Return value
Noise intensity.void setMotionBlurNumSteps( int steps )
Sets the number of steps used in the motion blur. The higher the value, the more correct the motion blur effect is. At low values, moving objects may look doubled, however, performance will increase.Arguments
- int steps - Number of steps in range [2;64]. The default value is 4.
int getMotionBlurNumSteps( )
Returns the current number of steps used in the motion blur. The higher the value, the more correct the motion blur effect is. At low values, moving objects may look doubled, however, performance will increase.Return value
Number of steps.void setMotionBlurVelocityScale( float scale )
Sets amount of motion blur for moving physical bodies. The higher the value, the more blurred the objects will appear when moving.Arguments
- float scale - Scale of bodies' linear and angular velocities used for the motion blur. If a negative value is provided, 0 will be used instead.
float getMotionBlurVelocityScale( )
Returns the current amount of motion blur for moving physical bodies. The higher the value, the more blurred the objects will appear when moving.Return value
Scale of bodies' linear and angular velocities used for the motion blur.int getNumDecals( )
Returns the number of rendered per frame decals that can be currently seen in the viewport (during all of the rendering passes).Return value
The number of decals.int getNumDips( )
Returns the number of draw calls used in the current scene. See Rendering Profiler article for details.Return value
The number of draw calls.int getNumInstances( )
Returns the maximum number of instances that can be rendered for each of the following node types:Return value
Maximum number of instances that can be rendered.int getNumLights( )
Returns the number of light passes rendered per frame. It means that the value contains the number of all light sources that are currently seen illuminating something in the viewport and also includes additional passes for rendering lights in the reflecting surfaces (if dynamical reflections are used). See Rendering Profiler article for details.Return value
The number of light passes.int getNumMaterials( )
Returns the number of materials set per frame (during all of the rendering passes) in the current scene.Return value
The number of materials.int getNumPrimitives( )
Returns the number of geometric rendered per frame primitives that can be currently seen in the viewport. See Rendering Profiler article for details.Return value
The number of primitives.int getNumProcedurals( )
Returns the number of procedurals that can be currently seen in the viewport.Return value
The number of procedurals.int getNumReflections( )
Returns the number of reflections drawn per frame that can be currently seen in the viewport. In case of cubemap reflections, if all six faces are updated, six reflections are rendered per each frame.Return value
The number of reflections.int getNumShaders( )
Returns the number of shaders set per frame. See Rendering Profiler article for details.Return value
The number of shaders.int getNumShadows( )
Returns the number of shadow passes rendered per frame. See Rendering Profiler article for details.Return value
The number of shadow passes.int getNumSurfaces( )
Returns the number of rendered per frame surfaces that can be currently seen in the viewport (in all rendering passes). See Rendering Profiler article for details.Return value
Number of surfaces.int getNumTriangles( )
Returns the number of rendered per frame triangles that can be currently seen in the viewport. See Rendering Profiler article for details.Return value
Number of triangles.void setObjectDistance( float distance )
Sets the distance, at which (and farther) objects will not be rendered.Arguments
- float distance - Distance in units.
float getObjectDistance( )
Returns a distance, at which (and farther) objects will not be rendered.Return value
Distance in units.void setOccluders( int occluders )
Enables or disables rendering of occluders.Arguments
- int occluders - 1 to enable rendering of occluders, 0 to disable it. The default value is 1.
int isOccluders( )
Returns a value indicating if rendering of occluders is enabled.Return value
1 if rendering of occluders is enabled; otherwise, 0. The default value is 1.void setOccludersResolution( const Math::vec2 & resolution )
Sets the resolution of the texture, to which occluders are rendered.Arguments
- const Math::vec2 & resolution - Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (128, 64).
Math::vec2 getOccludersResolution( )
Returns the current resolution of the texture, to which occluders are rendered.Return value
Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (128, 64).void setOccludersShadows( int shadows )
Sets the value indicating whether rendering of occluders for shadows is enabled.Arguments
- int shadows - 1 to enable rendering of occluders for shadows, 0 to disable it. The default value is 0.
int isOccludersShadows( )
Returns the value indicating whether rendering of occluders for shadows is enabled.Return value
1 if rendering of occluders for shadows is enabled; otherwise, 0. The default value is 0.void setOccludersShadowsResolution( const Math::vec2 & resolution )
Sets the resolution of the texture, to which occluders for shadows are rendered.Arguments
- const Math::vec2 & resolution - Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (512, 512).
Math::vec2 getOccludersShadowsResolution( )
Returns the current resolution of the texture, to which occluders for shadows are rendered.Return value
Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (512, 512).void setOcclusionQueries( int queries )
Enables or disables additional hardware occlusion query test before sending data to GPU.Arguments
- int queries - 1 to enable additional hardware occlusion query test, 0 to disable it. The default value is 1.
int isOcclusionQueries( )
Returns a value indicating if additional hardware occlusion query test before sending data to GPU is enabled.Return value
1 if if additional hardware occlusion query test is enabled; otherwise, 0.void setOcclusionQueriesNumFrames( int frames )
Sets the number of frames for additional hardware occlusion query test performed before sending data to GPU.Arguments
- int frames - Number of frames. The value within the [0; 1024] range. The default value is 5.
int getOcclusionQueriesNumFrames( )
Returns the current number of frames for additional hardware occlusion query test performed before sending data to GPU.Return value
Number of frames. The value within the [0; 1024] range.void setPanorama( int panorama )
Sets the mode of panoramic rendering.Arguments
- int panorama - One of the following values:
- 0 - disabled (by default).
- 1 - 180-degree panorama with curved edges.
- 2 - 180-degree linear panorama without distortion at the edges.
- 3 - 180-degree spherical panorama (fisheye).
- 4 - a 360-degree panorama with curved edges.
- 5 - a 360-degree linear panorama without distortion at the edges.
- 6 - 360-degree spherical panorama (fisheye).
int getPanorama( )
Returns the value indicating current mode of panoramic rendering.Return value
One of the following values:- 0 - disabled (by default).
- 1 - 180-degree panorama with curved edges.
- 2 - 180-degree linear panorama without distortion at the edges.
- 3 - 180-degree spherical panorama (fisheye).
- 4 - a 360-degree panorama with curved edges.
- 5 - a 360-degree linear panorama without distortion at the edges.
- 6 - 360-degree spherical panorama (fisheye).
void setPostMaterials( const char * materials )
Sets post postprocess materials that are applied after all other postprocess (such as HDR, DoF, etc.) are rendered. Materials are applied in the order of listing.
They are used together with Player::setPostMaterials(), if any.
Arguments
- const char * materials - Comma-separated list of post postprocess material names.
const char * getPostMaterials( )
Returns names of the current post postprocess materials that are applied after all other postprocess (such as HDR, DoF, etc.) are rendered. Materials are applied in the order of listing.
They are used together with Player::getPostMaterials(), if any.
Return value
Comma-separated list of current post postprocess material names.void setReflectionDistance( float distance )
Sets the distance, at which (and farther) reflections will not be rendered.Arguments
- float distance - Distance in units.
float getReflectionDistance( )
Returns the distance, at which (and farther) reflections will not be rendered.Return value
Distance in units.void setReflectionDynamic( int dynamic )
Enables or disables dynamic reflections for materials.Arguments
- int dynamic - 1 to enable dynamic reflections for materials, 0 to disable it. The default value is 1.
int isReflectionDynamic( )
Returns a value indicating if dynamic reflections for materials are enabled.Return value
1 if dynamic reflections for materials are enabled; otherwise, 0.void setReflectionDynamicBlur( int blur )
Enables or disables blurring of dynamic reflections for materials.Arguments
- int blur - 1 to enable blurring of dynamic reflections for materials, 0 to disable it. The default value is 0.
int isReflectionDynamicBlur( )
Returns a value indicating if blurring of dynamic reflections for materials is enabled.Return value
1 if if blurring of dynamic reflections for materials is enabled; otherwise, 0.void setReflectionLods( int lods )
Enables or disables reduction of resolution of dynamic reflections when the camera moves away.Arguments
- int lods - 1 to enable reduction of resolution of dynamic reflections when the camera moves away, 0 to disable it. The default value is 1.
int isReflectionLods( )
Returns a value indicating if reduction of resolution of dynamic reflections when the camera moves away is enabled.Return value
1 if reduction of resolution of dynamic reflections when the camera moves away is enabled; otherwise, 0.void setRefraction( int refraction )
Enables or disables refraction.Arguments
- int refraction - 1 to enable refraction, 0 to disable it. The default value is 1.
int isRefraction( )
Returns a value indicating if refraction is enabled.Return value
1 if refraction is enabled; otherwise, 0.void setRefractionDispersion( const Math::vec3 & dispersion )
Sets the refraction displacement for red, green and blue channels (according to refraction texture of refractive materials). Can be used to create light dispersion (chromatic aberrations).Arguments
- const Math::vec3 & dispersion - Dispersion displacement per channel. If a negative value is set for a channel, 0 will be used instead.
Math::vec3 getRefractionDispersion( )
Returns the refraction displacement for red, green and blue channels (according to the refraction texture of refractive materials). It can be used to create light dispersion (chromatic aberrations).Return value
Dispersion displacement.void setRenderMaterials( const char * materials )
Sets render postprocess materials that are applied before all other postprocess (such as HDR, DoF, etc.) are rendered. Materials are applied in the order of listing.Arguments
- const char * materials - List of comma-separated postprocess material names.
const char * getRenderMaterials( )
Returns names of the current postprocess materials that are applied before all other postprocess (such as HDR, DoF, etc.) are rendered. Materials are applied in the order of listing.Return value
Names of the current render materials.void setScreenPrecision( int precision )
Sets screen precision. This parameter determines the texture format used for screen HDR buffers.Arguments
- int precision - One of the following values:
- 0 - RG11B10F.
- 1 - RGBA16F (by default).
int isScreenPrecision( )
Returns a value indicating the current screen precision. This parameter determines the texture format used for screen HDR buffers.Return value
One of the following values:- 0 - RG11B10F.
- 1 - RGBA16F (by default).
void setShaderDefines( const char * defines )
Set additional shader defines.Arguments
- const char * defines - Additional shader defines.
const char * getShaderDefines( )
Returns additional shader defines.Return value
Additional shader defines.void setShadowDistance( float distance )
Sets the distance, at which (and farther) shadows will not be rendered.Arguments
- float distance - Distance in units.
float getShadowDistance( )
Returns the distance, at which (and farther) shadows will not be rendered.Return value
Distance in units.void setShadows( int shadows )
Enables or disables shadows rendering.Arguments
- int shadows - 1 to enable shadows rendering, 0 to skip it. The default value is 1.
int isShadows( )
Returns a value indicating whether shadows are rendered or not.Return value
1 if shadows are rendered; otherwise, 0.void setShadowsAlphaTest( int test )
Enables or disables alpha test for shadows.Arguments
- int test - 1 to enable alpha test for shadows, 0 to disable it. The default value is 1.
int isShadowsAlphaTest( )
Returns a value indicating if alpha test is enabled for shadows.Return value
1 if alpha test is enabled for shadows; otherwise, 0.void setShadowShafts( int shafts )
Enables or disables volumetric shadows.Arguments
- int shafts - 1 to enable volumetric shadows, 0 to disable. The default value is 0.
int isShadowShafts( )
Returns a value indicating if volumetric shadows are enabled.Return value
1 if volumetric shadows are enabled; otherwise, 0.void setShadowShaftsExposure( float exposure )
Sets the contrast used for volumetric shadows.Arguments
- float exposure - Shadow contrast. The provided value will be saturated in the range [0.0f; 1.0f]. 0.0f means that the shadows are not seen at all.
float getShadowShaftsExposure( )
Returns the contrast used for volumetric shadows.Return value
Shadow contrast.void setShadowShaftsLength( float length )
Sets the length of volumetric shadows.Arguments
- float length - Shadow length. The provided value will be saturated in the range [0.0f; 1.0f]. 0.0f means that there are no shadows. 1 means that the shadows are long enough to occupy the whole screen.
float getShadowShaftsLength( )
Returns the length of volumetric shadows.Return value
Shadow length.void setShadowsScreenSpace( int space )
Enables or disables screen space shadows. They provide high-quality penumbra, per-light work, per-pixel detail at any zoom level and infinite visibility distance (when enabled, distant objects can cast shadows next to the horizon). Supports depth cutout parallax. Screen space shadows can be mixed with regular ones.Arguments
- int space - 1 to enable screen space shadows, 0 to disable. The default value is 1.
int isShadowsScreenSpace( )
Returns the value indicating if screen space shadows are enabled. They provide high-quality penumbra, per-light work, per-pixel detail at any zoom level and infinite visibility distance (when enabled, distant objects can cast shadows next to the horizon). Supports depth cutout parallax. Screen space shadows can be mixed with regular ones.Return value
1 if screen space shadows are enabled; otherwise, 0.void setShadowsSoft( int soft )
Enables or disables soft shadows.Arguments
- int soft - 1 to enable soft shadows, 0 to disable. The default value is 1.
int isShadowsSoft( )
Returns the value indicating if soft shadows are enabled.Return value
1 if soft shadows are enabled; otherwise, 0.void setShadowsSoftNoise( float noise )
Sets the level of noise at the edges of shadows.Arguments
- float noise - Level of noise at the edges of shadows. Higher values reduce banding effect.
float getShadowsSoftNoise( )
Returns the current level of noise at the edges of shadows.Return value
Current level of noise at the edges of shadows. Higher values reduce banding effect.void setShadowsSoftQuality( int quality )
Sets the quality of soft shadows.Arguments
- int quality - One of the following values:
- 0 - low.
- 1 - medium (by default).
- 2 - high.
int getShadowsSoftQuality( )
Returns the current quality of soft shadows.Return value
One of the following values:- 0 - low.
- 1 - medium (by default).
- 2 - high.
void setShadowsTranslucentDepth( float depth )
Sets the global translucence depth value defining how deep the light goes through translucent objects shifting the shadow.Arguments
- float depth - Global translucence depth to be used. The higher the value, the deeper the light penetrates translucent objects shifting the shadow.
float getShadowsTranslucentDepth( )
Returns the global translucence depth value defining how deep the light goes through translucent objects shifting the shadow.Return value
Current global translucence depth value. The higher the value, the deeper the light penetrates translucent objects shifting the shadow.void setShadowsWorldLerpCascades( int cascades )
Enables or disables shadows cascades lerp.Arguments
- int cascades - 1 to enable shadows cascades lerp, 0 to disable it. The default value is 1.
int isShadowsWorldLerpCascades( )
Returns the value indicating if shadows cascades lerp is enabled.Return value
1 if shadows cascades lerp is enabled; otherwise, 0.void setSharpen( int sharpen )
Enables or disables the sharpening post-processing effect.Arguments
- int sharpen - 1 to enable the sharpening post-processing effect, 0 to disable it. The default value is 0.
int isSharpen( )
Returns a value indicating if the sharpening post-processing effect is enabled.Return value
1 if the sharpening post-processing effect is enabled; otherwise, 0.void setSharpenIntensity( float intensity )
Sets intensity of the sharpening effect.Arguments
- float intensity - Intensity of the sharpening effect.
float getSharpenIntensity( )
Returns intensity of the sharpening effect.Return value
Intensity of the sharpening effect.void setShowAlphaTest( int test )
Displays or hides the visualizer for transparent objects using alpha test.Arguments
- int test - 1 to display the visualizer for transparent objects using alpha test, 0 to hide it. The default value is 0.
int isShowAlphaTest( )
Returns a value indicating whether the visualizer is displayed for transparent objects using alpha test or not.Return value
1 if visualizer for transparent objects using alpha test is displayed; otherwise, 0.void setShowAmbient( int ambient )
Enables or disables displaying the ambient pass buffer.Arguments
- int ambient - 1 to display the ambient pass buffer, 0 to hide it. The default value is 0.
int isShowAmbient( )
Returns a value indicating whether the ambient pass buffer is displayed or not.Return value
1 if the ambient pass buffer is displayed; otherwise, 0.void setShowCascades( int cascades )
Displays or hides world shadow cascades.Arguments
- int cascades - 1 to display world shadow cascades, 0 to hide them. The default value is 0.
int isShowCascades( )
Returns a value indicating whether world shadow cascades are displayed or not.Return value
1 if world shadow cascades are displayed; otherwise, 0.void setShowDecals( int decals )
Displays or hides the visualizer for decals.Arguments
- int decals - 1 to display the visualizer for decals, 0 to hide it. The default value is 0.
int isShowDecals( )
Returns a value indicating whether the visualizer is displayed for decals or not.Return value
1 if visualizer for decals is displayed; otherwise, 0.void setShowDynamic( int dynamic )
Displays or hides the visualizer for dynamic objects.Arguments
- int dynamic - 1 to display the visualizer for dynamic objects, 0 to hide it. The default value is 0.
int isShowDynamic( )
Returns a value indicating whether the visualizer is displayed for dynamic objects or not.Return value
1 if visualizer for dynamic objects is displayed; otherwise, 0.void setShowGeodeticPivot( int pivot )
Displays or hides geodetic pivots.Arguments
- int pivot - 1 to display geodetic pivots, 0 to hide them. The default value is 0.
int isShowGeodeticPivot( )
Returns a value indicating whether geodetic pivots are displayed or not.Return value
1 if geodetic pivots are displayed; otherwise, 0.void setShowMipmaps( int mipmaps )
Displays or hides texture mipmap levels.Arguments
- int mipmaps - 1 to display texture mipmap levels, 0 to hide them. The default value is 0.
int isShowMipmaps( )
Returns a value indicating whether texture mipmap levels are displayed or not.Return value
1 if texture mipmap levels are displayed; otherwise, 0.void setShowOccluder( int occluder )
Displays or hides the buffer used for occluders.Arguments
- int occluder - 1 to display the buffer used for occluders, 0 to hide it. The default value is 0.
int isShowOccluder( )
Returns a value indicating whether the buffer used for occluders is displayed in the viewport or not.Return value
1 if the buffer used for occluders is displayed; otherwise, 0.void setShowQueries( int queries )
Displays or hides occlusion query boxes.Arguments
- int queries - 1 to display occlusion query boxes, 0 to hide them. The default value is 0.
int isShowQueries( )
Returns a value indicating whether occlusion query boxes are displayed in the viewport or not.Return value
1 if occlusion query boxes are displayed; otherwise, 0.void setShowScissors( int scissors )
Displays or hides scissor rectangles.Arguments
- int scissors - 1 to display scissor rectangles, 0 to hide them. The default value is 0.
int isShowScissors( )
Returns a value indicating if scissor rectangles are displayed.Return value
1 if scissor rectangles are displayed; otherwise, 0.void setShowTextures( int textures )
Sets the display mode for buffers used by the renderer.Arguments
- int textures - One of the following values:
- 0 - hide all buffers (by default).
- 1 - display render textures in a compact view.
- 2 - display render textures in a full view.
int getShowTextures( )
Returns the current display mode for buffers used by the renderer.Return value
One of the following values:- 0 - all buffers are hidden (by default).
- 1 - render textures are displayed in a compact view.
- 2 - render textures are displayed in a full view.
void setShowTexturesNumber( int number )
Sets the number of buffers in a row displayed in the full view mode (see setShowTextures(2)).Arguments
- int number - Number of buffers in a row. Value within the [1; 16] range. The default value is 7.
int getShowTexturesNumber( )
Returns the current number of buffers in a row displayed in the full view mode (see setShowTextures(2)).Return value
Number of buffers in a row.void setShowTexturesOffset( int offset )
Sets the number of the buffer to start displaying from in the full view mode (see setShowTextures(2)).Arguments
- int offset - Number of the buffer to start displaying from. Value within the [0; 52] range. The default value is 0.
int getShowTexturesOffset( )
Returns the current number of the buffer to start displaying from in the full view mode (see setShowTextures(2)).Return value
Number of the buffer to start displaying from. Value within the [0; 52] range.void setShowTransparent( int transparent )
Displays or hides the visualizer for transparent objects.Arguments
- int transparent - 1 to display the visualizer for transparent objects, 0 to hide it. The default value is 0.
int isShowTransparent( )
Returns a value indicating whether the visualizer is displayed for transparent objects or not.Return value
1 if visualizer for transparent objects is enabled; otherwise, 0.void setShowTriangles( int triangles )
Sets the wireframe mode for scene triangles.Arguments
- int triangles - One of the following values:
- 0 - triangles are hidden (by default).
- 1 - front faces with the depth test are shown.
- 2 - front faces without the depth test are shown.
- 3 - front and back faces without the depth test are shown.
int getShowTriangles( )
Returns the current wireframe mode for scene triangles.Return value
One of the following values:- 0 - triangles are hidden (by default).
- 1 - front faces with the depth test are shown.
- 2 - front faces without the depth test are shown.
- 3 - front and back faces without the depth test are shown.
void setSkipClouds( int clouds )
Enables or disables skipping of clouds rendering.Arguments
- int clouds - 1 to skip rendering of clouds, 0 to render clouds. The default value is 0.
int isSkipClouds( )
Returns a value indicating if rendering of clouds is skipped.Return value
1 if rendering of clouds is skipped; otherwise, 0.void setSkipLights( int lights )
Enables or disables skipping of lights rendering.Arguments
- int lights - 1 to skip rendering of lights, 0 to render lights. The default value is 0.
int isSkipLights( )
Returns a value indicating if rendering of lights is skipped.Return value
1 if rendering of lights is skipped; otherwise, 0.void setSkipWater( int water )
Enables or disables skipping of water rendering.Arguments
- int water - 1 to skip rendering of water, 0 to render water. The default value is 0.
int isSkipWater( )
Returns a value indicating if rendering of water is skipped.Return value
1 if rendering of water is skipped; otherwise, 0.void setSkipPostMaterials( int materials )
Enables or disables skipping of the post materials pass.Arguments
- int materials - 1 to skip the post materials pass, 0 to render it. The default value is 0.
int isSkipPostMaterials( )
Returns a value indicating if the post materials pass is skipped.Return value
1 if the post materials pass is skipped; otherwise, 0.void setSkipRenderMaterials( int materials )
Enables or disables skipping of the render materials pass.Arguments
- int materials - 1 to skip the render materials pass, 0 to render it. The default value is 0.
int isSkipRenderMaterials( )
Returns a value indicating if the render materials pass is skipped.Return value
1 if the render materials pass is skipped; otherwise, 0.void setSkipTransparent( int transparent )
Enables or disables skipping of the transparent pass.Arguments
- int transparent - 1 to skip the transparent pass, 0 to render it. The default value is 0.
int isSkipTransparent( )
Returns a value indicating if the transparent pass is skipped.Return value
1 if the transparent pass is skipped; otherwise, 0.void setSkipTransparentAmbient( int ambient )
Enables or disables skipping of the transparent ambient pass.Arguments
- int ambient - 1 to skip the transparent ambient pass, 0 to render it. The default value is 0.
int isSkipTransparentAmbient( )
Returns a value indicating if the transparent ambient pass is skipped.Return value
1 if the transparent ambient pass is skipped; otherwise, 0.void setSkipTransparentDeferred( int deferred )
Enables or disables skipping of the transparent deferred pass.Arguments
- int deferred - 1 to skip the transparent deferred pass, 0 to render it. The default value is 0.
int isSkipTransparentDeferred( )
Returns a value indicating if the transparent deferred pass is skipped.Return value
1 if the transparent deferred pass is skipped; otherwise, 0.void setSkipTransparentLight( int light )
Enables or disables skipping of the transparent light pass.Arguments
- int light - 1 to skip the transparent light pass, 0 to render it. The default value is 0.
int isSkipTransparentLight( )
Returns a value indicating if the transparent light pass is skipped.Return value
1 if the transparent light pass is skipped; otherwise, 0.void setSkipTransparentMultipleEnvProbes( int probes )
Enables or disables skipping of the transparent multiple environment probes pass.Arguments
- int probes - 1 to skip the transparent multiple environment probes pass, 0 to render it. The default value is 0.
int isSkipTransparentMultipleEnvProbes( )
Returns a value indicating if the transparent multiple environment probes pass is skipped.Return value
1 if the transparent multiple environment probes pass is skipped; otherwise, 0.void setSkyRotation( const Math::quat & rotation )
Sets sky rotation.Arguments
- const Math::quat & rotation - Sky rotation quaternion.
Math::quat getSkyRotation( )
Returns sky rotation.Return value
Sky rotation quaternion.void setSSAO( int ssao )
Enables or disables the SSAO (Screen Space Ambient Occlusion) effect.Arguments
- int ssao - 1 to enable the SSAO effect, 0 to disable.
int isSSAO( )
Returns the value indicating if the SSAO (Screen Space Ambient Occlusion) effect is enabled.Return value
1 if the SSAO effect is enabled; otherwise, 0.void setSSAOCavity( int cavity )
Enables or disables the cavity option for the SSAO (Screen Space Ambient Occlusion) effect. This option improves (sharpens) the look of junction contours at low resolutions, so it should be used for detail enhancement (small stones, bolts and so on).Arguments
- int cavity - 1 to enable the cavity option for the SSAO effect, 0 to disable. The default value is 1.
int isSSAOCavity( )
Returns the value indicating if the cavity option for the SSAO (Screen Space Ambient Occlusion) effect is enabled. This option improves (sharpens) the look of junction contours at low resolutions, so it should be used for detail enhancement (small stones, bolts and so on).Return value
1 if the cavity option for the SSAO effect is enabled; otherwise, 0.void setSSAOCavityIntensity( float intensity )
Sets the intensity of sharpening of contours for the cavity option (see the setSSAOCavity() method).Arguments
- float intensity - Sharpening intensity value. The default value is 1.0f.
float getSSAOCavityIntensity( )
Returns the intensity of sharpening of contours for the cavity option (see the setSSAOCavity() method).Return value
Sharpening intensity value. The default value is 1.0f.void setSSAOCavityRadius( float radius )
Sets the size of junction contours area for the cavity option (see the setSSAOCavity() method).Arguments
- float radius - Size of junction contours area. The default value is 1.0f.
float getSSAOCavityRadius( )
Returns the size of junction contours area for the cavity option (see the setSSAOCavity() method).Return value
Size of junction contours area. The default value is 1.0f.void setSSAOIntensity( float intensity )
Sets the intensity of the SSAO (Screen Space Ambient Occlusion) for the scene. The intensity value affects brightness of shadows:- By the minimum value of 0.0f, the ambient occlusion shadowing is the lightest.
Arguments
- float intensity - Intensity value of the SSAO (Screen Space Ambient Occlusion) for the scene. The default value is 1.0f.
float getSSAOIntensity( )
Returns the intensity of the SSAO (Screen Space Ambient Occlusion) for the scene. The intensity value affects brightness of shadows:- By the minimum value of 0.0f, the ambient occlusion shadowing is the lightest.
Return value
SSAO intensity value. The default value is 1.0f.void setSSAOIntensityLightedSide( float side )
Sets the intensity of the SSAO (Screen Space Ambient Occlusion) for the scene object's lighted side.Arguments
- float side - SSAO intensity value for the scene object's lighted side. The default value is 1.0f.
float getSSAOIntensityLightedSide( )
Returns the intensity of SSAO(Screen Space Ambient Occlusion) for the scene objects' lighted side.Return value
SSAO intensity value for the scene object's lighted side. The default value is 1.0f.void setSSAOIntensityReflection( float reflection )
Sets the intensity of SSAO (Screen Space Ambient Occlusion) on reflections.Arguments
- float reflection - SSAO intensity value for reflections. The default value is 1.0f.
float getSSAOIntensityReflection( )
Returns the intensity of SSAO (Screen Space Ambient Occlusion) on reflections.Return value
SSAO intensity value for reflections. The default value is 1.0f.void setSSAONoise( int noise )
Enables or disables noise for the SSAO (Screen Space Ambient Occlusion) effect. This option reduces banding effect.Arguments
- int noise - 1 to enable SSAO noise, 0 to disable. The default value is 1.
int isSSAONoise( )
Returns the value indicating if noise for the SSAO (Screen Space Ambient Occlusion) effect is enabled. This option reduces banding effect.Return value
1 if SSAO noise is enabled; otherwise, 0.void setSSAOQuality( int quality )
Sets the quality of SSAO(Screen Space Ambient Occlusion).Arguments
- int quality - Quality of SSAO:
- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
int getSSAOQuality( )
Returns the quality of SSAO (Screen Space Ambient Occlusion).Return value
Quality of SSAO:- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
void setSSAORadius( float radius )
Sets the radius of SSAO (Screen Space Ambient Occlusion).The radius is the distance for each of the points in the world space, up to which they can shadow their neighboring points:- By low values, each point can cast shadows only on the points in the close range.
- By high values, each point casts shadows on points at more distant locations.
Arguments
- float radius - SSAO radius value. The default value is 1.0f.
float getSSAORadius( )
Returns the radius of SSAO (Screen Space Ambient Occlusion).The radius is the distance for each of the points in the world space, up to which they can shadow their neighboring points:- By low values, each point can cast shadows only on the points in the close range.
- By high values, each point casts shadows on points at more distant locations.
Return value
SSAO radius value.void setSSAOThreshold( float threshold )
Sets the threshold value for the SSAO (Screen Space Ambient Occlusion) effect.Arguments
- float threshold - SSAO threshold value in the range [0.0f; 1.0f]. The default value is 0.5f.
float getSSAOThreshold( )
Returns the current threshold value for the SSAO (Screen Space Ambient Occlusion) effect.Return value
Current SSAO threshold value.void setSSAORayTracing( int tracing )
Enables or disables ray tracing for SSAO (Screen Space Ambient Occlusion) calculation. When enabled, SSAO provides more realistic shadows between the objects.Arguments
- int tracing - 1 to enable ray tracing for SSAO calculation, 0 to disable. The default value is 1.
int isSSAORayTracing( )
Returns a value indicating if ray tracing is used for SSAO (Screen Space Ambient Occlusion) calculation. When enabled, SSAO provides more realistic shadows between the objects.Return value
1 if ray tracing is used for SSAO calculation; otherwise, 0.void setSSAORayTracingDenoise( int denoise )
Enables or disables noise reduction for the ray-traced SSAO (Screen Space Ambient Occlusion). This option reduces noise by using blur effect.Arguments
- int denoise - 1 to enable noise reduction for the ray-traced SSAO, 0 to disable.
int isSSAORayTracingDenoise( )
Returns the value indicating if noise reduction for the ray-traced SSAO (Screen Space Ambient Occlusion) is enabled. This option reduces noise by using blur effect.Return value
1 if noise reduction for the ray-traced SSAO is enabled; otherwise, 0.void setSSAORayTracingThreshold( float threshold )
Sets the threshold value for the ray-traced SSAO (Screen Space Ambient Occlusion).Arguments
- float threshold - SSAO ray tracing threshold value. The default value is 1.0f.
float getSSAORayTracingThreshold( )
Returns the current threshold value for the ray-traced SSAO (Screen Space Ambient Occlusion).Return value
SSAO ray tracing threshold value. The default value is 1.0f.void setSSAOResolution( int resolution )
Sets the resolution of SSAO (Screen Space Ambient Occlusion).Arguments
- int resolution - Resolution of SSAO:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getSSAOResolution( )
Returns the resolution of SSAO (Screen Space Ambient Occlusion).Return value
Resolution of SSAO:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setSSGI( int ssgi )
Enables or disables the SSGI (Screen Space Global Illumination) effect.Arguments
- int ssgi - 1 to enable the SSGI effect, 0 to disable it. The default value is 0.
int isSSGI( )
Returns the value indicating if the SSGI (Screen Space Global Illumination) effect is enabled.Return value
1 if the SSGI effect is enabled; otherwise, 0.void setSSGIIntensity( float intensity )
Sets the intensity of the SSGI (Screen Space Global Illumination) for the scene.- By the minimum value of 0.0f, the global illumination is the darkest.
Arguments
- float intensity - SSGI intensity value. The default value is 1.0f.
float getSSGIIntensity( )
Returns the intensity of the SSGI (Screen Space Global Illumination) for the scene.- By the minimum value of 0.0f, the global illumination is the darkest.
Return value
SSGI intensity value. The default value is 1.0f.void setSSGINormalThreshold( float threshold )
Sets the normal threshold of the SSGI (Screen Space Global Illumination). It determines sensitivity of GI to normals. Normals affect ray intensity: smaller angle of incidence increases ray intensity.- By the minimum value of 0.0f, normals are ignored.
Arguments
- float threshold - SSGI normal threshold value. The default value is 1.0f.
float getSSGINormalThreshold( )
Returns the normal threshold of the SSGI (Screen Space Global Illumination). It determines sensitivity of GI to normals. Normals affect ray intensity: smaller angle of incidence increases ray intensity.- By the minimum value of 0.0f, normals are ignored.
Return value
SSGI normal threshold value.void setSSGIQuality( int quality )
Sets the quality of the SSGI (Screen Space Global Illumination). Quality means the number of the used samples:- Low — 4 samples
- Medium — 8 samples
- High — 16 samples
- Ultra — 32 samples
Arguments
- int quality - SSGI quality:
- 0 - Low
- 1 - Medium (by default)
- 2 - High
- 3 - Ultra
int getSSGIQuality( )
Returns the quality of the SSGI (Screen Space Global Illumination). Quality means the number of the used samples:- Low — 4 samples
- Medium — 8 samples
- High — 16 samples
- Ultra — 32 samples
Return value
SSGI quality:- 0 - Low
- 1 - Medium (by default)
- 2 - High
- 3 - Ultra
void setSSGIRadius( float radius )
Sets the radius of the SSGI (Screen Space Global Illumination). The radius determines the size of the region surrounding a particular sampling point:- By low values, each point affects only the points in the close range.
- By high values, each point affects farther positioned points.
Arguments
- float radius - SSGI radius value. The default value is 1.0f.
float getSSGIRadius( )
Returns the radius of the SSGI (Screen Space Global Illumination). The radius determines the size of the region surrounding a particular sampling point:- By low values, each point affects only the points in the close range.
- By high values, each point affects farther positioned points.
Return value
SSGI radius value. The default value is 1.0f.void setSSGIRayTracing( int tracing )
Enables or disables ray tracing for SSGI (Screen Space Global Illumination) calculation. When enabled, SSGI recreates light reflections from the object’s surface.Arguments
- int tracing - 1 to enable ray tracing for SSGI calculation, 0 to disable. The default value is 1.
int isSSGIRayTracing( )
Returns the value indicating if ray tracing is used for SSGI (Screen Space Global Illumination) calculation. When enabled, SSGI recreates light reflections from the object’s surface.Return value
1 if ray tracing is used for SSGI calculation; otherwise, 0.void setSSGIRayTracingDenoise( int denoise )
Enables or disables noise reduction for the ray-traced SSGI (Screen Space Global Illumination). This option reduces noise by using blur effect.Arguments
- int denoise - 1 to enable noise reduction for the ray-traced SSGI, 0 to disable.
int isSSGIRayTracingDenoise( )
Returns a value indicating if noise reduction for the ray-traced SSGI (Screen Space Global Illumination) is enabled. This option reduces noise by using blur effect.Return value
1 if noise reduction for the ray-traced SSGI is enabled; otherwise, 0.void setSSGIRayTracingThreshold( float threshold )
Sets the threshold value for the ray-traced SSGI (Screen Space Global Illumination).Arguments
- float threshold - SSGI ray tracing threshold value. The default value is 1.0f.
float getSSGIRayTracingThreshold( )
Returns the current threshold value for the ray-traced SSGI (Screen Space Global Illumination).Return value
SSGI ray tracing threshold value. The default value is 1.0f.void setSSGIResolution( int resolution )
Sets the resolution of SSGI (Screen Space Global Illumination).Arguments
- int resolution - SSGI resolution:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getSSGIResolution( )
Returns the resolution of SSGI (Screen Space Global Illumination).Return value
SSGI resolution:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setSSGIResolutionColor( int color )
Sets the resolution of the color buffer used for SSGI (Screen Space Global Illumination) calculation. This option significantly affects performance.Arguments
- int color - One of the following values:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getSSGIResolutionColor( )
Returns the resolution of the color buffer used for SSGI (Screen Space Global Illumination) calculation.Return value
One of the following values:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setSSR( int ssr )
Enables or disables the SSR (Screen Space Reflections) effect.Arguments
- int ssr - 1 to enable the SSR effect, 0 to disable it.
int isSSR( )
Returns the value indicating if the SSR (Screen Space Reflections) effect is enabled.Return value
1 if the SSR effect is enabled; otherwise, 0. The default value is 1.void setSSRDenoise( int denoise )
Enables or disables noise reduction for the SSR (Screen Space Reflections) effect.Arguments
- int denoise - 1 to enable noise reduction for the SSR effect, 0 to disable it.
int isSSRDenoise( )
Returns the value indicating if noise reduction for the SSR (Screen Space Reflections) effect is enabled.Return value
1 if noise reduction for the SSR effect is enabled; otherwise, 0.void setSSRFastTracing( int tracing )
Enables or disables fast tracing for the SSR (Screen Space Reflections) effect. This mode makes it possible to obtain distant reflections using low number of steps while keeping performance high. However, tiny objects may not be reflected. Disabling this mode improves quality but significantly drops performance.Arguments
- int tracing - 1 to enable SSR fast tracing, 0 to disable it. The default value is 1.
int isSSRFastTracing( )
Returns the value indicating if fast tracing for the SSR (Screen Space Reflections) effect is enabled.Return value
1 if SSR fast tracing is enabled; otherwise, 0.void setSSRImportanceSampling( int sampling )
Enables or disables the importance sampling mode for the SSR (Screen Space Reflections) effect. Importance sampling provides more accurate but slower calculation of SSR roughness.Arguments
- int sampling - 1 to enable SSR importance sampling, 0 to disable it. The default value is 0.
int isSSRImportanceSampling( )
Returns the value indicating if the importance sampling mode for the SSR (Screen Space Reflections) effect is enabled. Importance sampling provides more accurate but slower calculation of SSR roughness.Return value
1 if SSR importance sampling is enabled; otherwise, 0.void setSSRIncreasedAccuracy( int accuracy )
Enables or disables increased accuracy for the SSR (Screen Space Reflections). This option reduces visual artifacts around objects, which can appear at resolution lower than full, by increasing accuracy of the last step.Arguments
- int accuracy - 1 to enable increased accuracy for the SSR, 0 to disable it. The default value is 0.
int isSSRIncreasedAccuracy( )
Returns a value indicating if increased accuracy option is enabled for the SSR (Screen Space Reflections). This option reduces visual artifacts around objects, which can appear at resolution lower than full, by increasing accuracy of the last step.Return value
1 if increased accuracy is enabled for the SSR; otherwise, 0.void setSSRNoiseRay( float ray )
Sets the intensity of the ray noise used for SSR (Screen Space Reflections) calculation. This parameter is used to reduce the banding effect on rough reflections by using the noise.Arguments
- float ray - Ray noise intensity in range [0.0f;1.0f]. The default value is 0.5f. The higher is the value, the less pronounced is the banding effect.
float getSSRNoiseRay( )
Returns the intensity of the ray noise used for SSR (Screen Space Reflections) calculation. This parameter is used to reduce the banding effect on rough reflections by using the noise.Return value
Ray noise intensity.void setSSRNoiseStep( float step )
Sets the intensity of the step noise used for SSR (Screen Space Reflections) calculation. This parameter is used to reduce the banding effect of tracing by using the noise.Arguments
- float step - Step noise intensity. The default value is 0.3f. The higher is the value, the less pronounced is the banding effect.
float getSSRNoiseStep( )
Returns the intensity of the step noise used for SSR (Screen Space Reflections) calculation.Return value
Step noise intensity.void setSSRNumRays( int rays )
Sets the number of rays of SSR (Screen Space Reflections) per pixel that are used to calculate rough refrections. Using more rays provides more precise SSR roughness calculation, however, it is more expensive.Arguments
- int rays - Number of rays per pixel within the [1; 64] range. The default value is 4.
int getSSRNumRays( )
Returns the number of rays of SSR (Screen Space Reflections) per pixel that are used to calculate rough refrections.Return value
Number of rays per pixel within the [1; 64] range.void setSSRNumSteps( int steps )
Sets the number of steps of SSR (Screen Space Reflections) per ray that are used for trace calculation. Defines accuracy of reflections and causes a reasonable performance impact. The higher the value, the more accurate obstacles between objects are accounted.Arguments
- int steps - Number of steps per ray within the [1; 64] range. The default value is 16.
int getSSRNumSteps( )
Returns the number of steps of SSR (Screen Space Reflections) per ray that are used for trace calculation. The number of steps defines accuracy of reflections and causes a reasonable performance impact. The higher the value, the more accurate obstacles between objects are accounted.Return value
Number of steps per ray within the [1; 64] range.void setSSRResolution( int resolution )
Sets the resolution of SSR (Screen Space Reflections).Arguments
- int resolution - SSR resolution:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getSSRResolution( )
Returns the resolution of SSR (Screen Space Reflections).Return value
One of the following values:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setSSRResolutionColor( int color )
Sets the resolution of the color buffer used for SSR (Screen Space Reflections) calculation. This option significantly affects performance.Arguments
- int color - Color buffer resolution:
- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
int getSSRResolutionColor( )
Returns the resolution of the color buffer used for SSR (Screen Space Reflections) calculation.Return value
Color buffer resolution:- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
void setSSRResolutionDepth( int depth )
Sets the resolution of the depth buffer used for SSR (Screen Space Reflections) calculation. This option affects detailing of reflections of tiny objects.Arguments
- int depth - Depth buffer resolution:
- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
To gain performance, this option can be set to lower values while enabling increased accuracy.
int getSSRResolutionDepth( )
Returns the resolution of the depth buffer used for SSR (Screen Space Reflections) calculation.Return value
Depth buffer resolution:- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
void setSSRRoughnessQuality( int quality )
Sets the quality of SSR (Screen Space Reflections) roughness. The parameter can be changed only when the Importance sampling option is disabled.Arguments
- int quality - Roughness quality:
- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
int getSSRRoughnessQuality( )
Returns the current quality of SSR (Screen Space Reflections) roughness.Return value
Roughness quality:- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
void setSSRStepSize( float size )
Sets the size of the trace step used for SSR (Screen Space Reflections) calculation. The higher the value, the longer the trace. However, tiny objects may be missed. The lower the value, the more detailed will be reflections of the tiny objects.Arguments
- float size - Step size. The default value is 1.0f.
float getSSRStepSize( )
Returns the size of the trace step used for SSR (Screen Space Reflections) calculation.Return value
Step size.void setSSRTGI( int ssrtgi )
Enables or disables the SSRTGI (Screen Space Ray-Traced Global Illumination) effect.Arguments
- int ssrtgi - 1 to enable the SSRTGI effect, 0 to disable. The default value is 1.
int isSSRTGI( )
Returns a value indicating if the SSRTGI (Screen Space Ray-Traced Global Illumination) effect is enabled.Return value
1 if the SSRTGI effect is enabled; otherwise, 0.void setSSRTGIFastTracing( int tracing )
Enables or disables fast tracing for the SSRTGI (Screen Space Ray-Traced Global Illumination). This option dynamically changes step size to obtain indirect illumination bounces using low number of steps while keeping performance high. Disabling this option improves quality, but significantly reduces performance. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int tracing - 1 to enable fast tracing for the SSRTGI, 0 to disable. The default value is 1.
int isSSRTGIFastTracing( )
Returns a value indicating if fast tracing is enabled for the SSRTGI (Screen Space Ray-Traced Global Illumination).Return value
1 if the SSRTGI fast tracing is enabled; otherwise, 0.void setSSRTGIIncreasedAccuracy( int accuracy )
Enables or disables increased accuracy for the SSRTGI (Screen Space Ray-Traced Global Illumination). This option reduces visual artifacts by increasing accuracy of the last step. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int accuracy - 1 to enable increased accuracy for the SSRTGI, 0 to disable. The default value is 1.
int isSSRTGIIncreasedAccuracy( )
Returns a value indicating if increased accuracy option is enabled for the SSRTGI (Screen Space Ray-Traced Global Illumination).Return value
1 if increased accuracy is enabled for the SSRTGI; otherwise, 0.void setSSRTGINoiseRay( float ray )
Sets the intensity of the ray noise used for SSRTGI calculation. This parameter is used to reduce the banding effect on the final image by using the noise: the higher is the value, the less pronounced is the banding effect. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- float ray - Ray noise intensity in range [0.0f;1.0f]. The default value is 0.5f. The higher is the value, the less pronounced is the banding effect.
float getSSRTGINoiseRay( )
Returns the intensity of the ray noise used for SSRTGI calculation.Return value
Ray noise intensity in range [0.0f;1.0f].void setSSRTGINoiseStep( float step )
Sets the intensity of the step noise used for SSRTGI calculation. This parameter is used to reduce the banding effect of tracing by using the noise: the higher is the value, the less pronounced is the banding effect. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- float step - Step noise intensity in range [0.0f;1.0f]. The default value is 0.5f. The higher is the value, the less pronounced is the banding effect.
float getSSRTGINoiseStep( )
Returns the intensity of the step noise used for SSRTGI calculation.Return value
Step noise intensity in range [0.0f;1.0f].void setSSRTGINumRays( int rays )
Sets the number of rays of SSRTGI per pixel that are to calculate the final image. Using more rays provides more precise SSRTGI calculation, however, it is more expensive. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int rays - Number of rays per pixel in range [1;1024]. The default value is 8.
int getSSRTGINumRays( )
Returns the number of rays of SSRTGI per pixel that are to calculate the final image in range [1;1024].Return value
Number of rays.void setSSRTGINumSteps( int steps )
Sets the number of steps of SSRTGI per ray that are used for trace calculation. The higher the value, the more accurate obstacles between objects are accounted. However, this option significantly affects performance. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int steps - Number of steps in range [1;256]. The default value is 8.
int getSSRTGINumSteps( )
Returns the number of steps of SSRTGI per ray that are used for trace calculation.Return value
Number of steps in range [1;256].void setSSRTGIResolution( int resolution )
Sets the resolution of SSRTGI (Screen Space Ray-Traced Global Illumination). This option significantly affects performance. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int resolution - SSRTGI resolution:
- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
int getSSRTGIResolution( )
Returns the resolution of SSRTGI (Screen Space Ray-Traced Global Illumination).Return value
SSRTGI resolution:- 0 - quarter resolution.
- 1 - half resolution (by default).
- 2 - full resolution.
void setSSRTGIResolutionDepth( int depth )
Sets the resolution of the depth buffer used for SSRTGI (Screen Space Ray-Traced Global Illumination) calculation. This option significantly affects performance. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int depth - Depth buffer resolution:
- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
To gain performance this option can be set to lower values while enabling the increased accuracy.
int getSSRTGIResolutionDepth( )
Returns the resolution of the depth buffer used for SSRTGI (Screen Space Ray-Traced Global Illumination) calculation.Return value
Depth buffer resolution:- 0 - quarter resolution (by default).
- 1 - half resolution.
- 2 - full resolution.
void setSSRTGIStepSize( float size )
Sets the size of the trace step used for SSRTGI calculation. The higher the value, the longer the trace. However, tiny objects may be missed. The lower the value, the more detailed will be the tiny objects. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- float size - Step size. The default value is 1.0f.
float getSSRTGIStepSize( )
Returns the size of the trace step used for SSRTGI calculation.Return value
Step size.void setSSRTGIUpscaling( int upscaling )
Enables or disables upscaling for the SSRTGI (Screen Space Ray-Traced Global Illumination). This option makes the quality of edges in half and quarter resolution look closer to full. The SSRTGI effect must be enabled (see the setSSRTGI() method).Arguments
- int upscaling - 1 to enable upscaling for the SSRTGI, 0 to disable it. The default value is 1.
int isSSRTGIUpscaling( )
Returns a value indicating if the upscaling option is enabled for the SSRTGI (Screen Space Ray-Traced Global Illumination).Return value
1 if the SSRTGI upscaling is enabled; otherwise, 0.void setSSRThreshold( float threshold )
Sets the threshold used for SSR (Screen Space Reflections) calculation. The threshold limits imitation of reflections in areas where SSR cannot get information. The higher the value, the less this effect is.Arguments
- float threshold - SSR threshold value. The default value is 1.0f
float getSSRThreshold( )
Returns the threshold used for SSR (Screen Space Reflections) calculation. The threshold limits imitation of reflections in areas where SSR cannot get information. The higher the value, the less this effect is.Return value
SSR threshold.void setSSRThresholdOcclusion( float occlusion )
Sets the occlusion threshold value. The occlusion threshold limits imitation of environment cubemap occlusion in areas where SSR cannot get information. The higher the value, the less this effect is. This parameter is mainly used for indoor environment to correct false reflections on occluded areas (false reflections are replaced with black color). For outdoor environment higher values of this parameter are recommended.Arguments
- float occlusion - SSR threshold occlusion. The default value is 1.0f
float getSSRThresholdOcclusion( )
Returns the current occlusion threshold value. The occlusion threshold limits imitation of environment cubemap occlusion in areas where SSR cannot get information. The higher the value, the less this effect is. This parameter is mainly used for indoor environment to correct false reflections on occluded areas (false reflections are replaced with black color). For outdoor environment higher values of this parameter are recommended.Return value
SSR threshold occlusion.void setSSRVisibilityRoughnessMax( float max )
Sets the maximum roughness value, starting from which the SSR (Screen Space Reflections) effect is not rendered.Arguments
- float max - Maximum roughness value within the [0.0f; 1.0f] range. The default value is 1.0f.
float getSSRVisibilityRoughnessMax( )
Returns the maximum roughness value, starting from which the SSR (Screen Space Reflections) effect is not rendered.Return value
Maximum roughness value within the [0.0f; 1.0f] range.void setSSRVisibilityRoughnessMin( float min )
Sets the minimum roughness value, starting from which the SSR (Screen Space Reflections) effect begins to fade out.Arguments
- float min - Minimum roughness value within the [0.0f; 1.0f] range. The default value is 1.0f.
float getSSRVisibilityRoughnessMin( )
Returns the minimum roughness value, starting from which the SSR (Screen Space Reflections) effect begins to fade out.Return value
Minimum roughness value within the [0.0f; 1.0f] range.void setSSS( int sss )
Enables or disables the SSS (subsurface scattering) effect.Arguments
- int sss - 1 to enable the SSS effect, 0 to disable. The default value is 0.
int isSSS( )
Returns a value indicating if the SSS (subsurface scattering) effect is enabled.Return value
1 if the SSS effect is enabled; otherwise, 0.void setSSSColor( const Math::vec4 & color )
Sets a subsurface scattering color used to simulate the subsurface component of skin lighting, i.e. the light that bounces inside of the subsurface tissue layers (epidermis and dermis) before exiting. For skin, subsurface color is reddish, due to blood circulating in skin tissues.Arguments
- const Math::vec4 & color - A subsurface scattering color.
Math::vec4 getSSSColor( )
Returns the current subsurface scattering color.Return value
A subsurface scattering color.void setSSSQuality( int quality )
Sets the quality of the SSS (subsurface scattering) effect.Arguments
- int quality - SSS quality:
- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
int getSSSQuality( )
Returns the quality of the SSS (subsurface scattering) effect.Return value
SSS quality:- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
void setSSSRadius( float radius )
Sets the subsurface scattering radius: distance in the screen space, within which colors will be sampled. It controls how much wrinkles, pores and cavities will be blurred and highlighted. The higher the value, the farther subsurface scattering reaches. Too high values result in the ghosting effect. By the minimum value of 0, no subsurface scattering is rendered.Arguments
- float radius - Subsurface scattering radius. The default value is 1.0f.
float getSSSRadius( )
Returns the current subsurface scattering radius.Return value
Subsurface scattering radius value.void setSSSResolution( int resolution )
Sets the resolution of the SSS (subsurface scattering) effect.Arguments
- int resolution - SSS resolution:
- 0 - half resolution (by default).
- 1 - full resolution.
int getSSSResolution( )
Returns the resolution of the SSS (subsurface scattering) effect.Return value
SSS resolution:- 0 - half resolution (by default).
- 1 - full resolution.
void setStereo( int stereo )
Sets the stereo rendering mode.Arguments
- int stereo - Stereo rendering mode:
- 0 - disabled (by default).
- 1 - enabled anaglyph stereo.
- 2 - enabled interlaced stereo.
- 3 - enabled horizontal stereo.
- 4 - enabled vertical stereo.
int getStereo( )
Returns the current stereo rendering mode.Return value
Stereo rendering mode:- 0 - disabled (by default).
- 1 - enabled anaglyph stereo.
- 2 - enabled interlaced stereo.
- 3 - enabled horizontal stereo.
- 4 - enabled vertical stereo.
void setStereoDistance( float distance )
Sets the focal distance for stereo rendering (distance in the world space to the point where two views line up, i.e. to the zero parallax plane).Arguments
- float distance - Focal distance for stereo rendering, in units.
float getStereoDistance( )
Returns the focal distance for stereo rendering (distance in the world space to the point where two views line up).Return value
Focal distance for stereo rendering, in units.void setStereoOffset( float offset )
Sets the virtual camera offset (an offset after the perspective projection).Arguments
- float offset - Virtual camera offset in units.
float getStereoOffset( )
Returns the virtual camera offset (an offset after the perspective projection).Return value
Virtual camera offset in units.void setStereoRadius( float radius )
Sets the radius for stereo (the half of the separation distance between the cameras).Arguments
- float radius - Stereo radius, in units. If a negative value is provided, 0 will be used instead.
float getStereoRadius( )
Returns the current radius for stereo (the half of the separation distance between the cameras).Return value
Stereo radius, in units.void setSunShafts( int shafts )
Enables or disables the light shafts effects.Arguments
- int shafts - 1 to enable light shafts, 0 to disable.
int isSunShafts( )
Returns a value indicating if light shafts are enabled.Return value
1 if the light shafts are enabled; otherwise, 0.void setSunShaftsAttenuation( float attenuation )
Sets the power of fading for HDR shaft flare across its length.Arguments
- float attenuation - Fading power. The provided value will be clamped to [0.0f; 1.0f] range.
float getSunShaftsAttenuation( )
Returns the current power of fading for HDR shaft flare across its length.Return value
Fading power.void setSunShaftsColor( const Math::vec4 & color )
Sets the color of the lens shafts.Arguments
- const Math::vec4 & color - Color of lens shafts.
Math::vec4 getSunShaftsColor( )
Returns the current color of the lens shafts.Return value
Color of lens shafts.void setSunShaftsLength( float length )
Sets the length of flare shafts.Arguments
- float length - Length of flare shafts relative to the screen width. The provided value is saturated in the range [0.0f; 1.0f].
float getSunShaftsLength( )
Returns the length of a flare shaft.Return value
Length of a flare shaft relative to the screen width.void setSunShaftsScale( float scale )
Sets the multiplier for color of HDR shaft flares.Arguments
- float scale - Shaft color scale. If a negative value is provided, 0.0f will be used instead.
float getSunShaftsScale( )
Returns the current multiplier for color of HDR shaft flares.Return value
Shaft color scale.void setSunShaftsThreshold( float threshold )
Sets the brightness threshold for flare shafts.Arguments
- float threshold - Flare shafts threshold.
float getSunShaftsThreshold( )
Returns the current brightness threshold for flare shafts.Return value
Flare shafts threshold.void setSupersampling( float supersampling )
Sets the number of samples per pixel used for supersampling.Arguments
- float supersampling - Number of samples per pixel within the range [1e-6f; 8.0f]. The default value is 1.0f
float getSupersampling( )
Returns the number of samples per pixel used for supersampling.Return value
Number of samples per pixel.void setTAAColorClamping( int clamping )
Enables or disables the TAA color clamping option. When enabled, the pixel color of the current and the previous frames is clamped. The image becomes more sharp, however, flickering can appear. Clamping is available only when TAA is enabled.Arguments
- int clamping - 1 to enable the TAA color clamping option, 0 to disable it. The default value is 1.
int isTAAColorClamping( )
Returns a value indicating if the TAA color clamping option is enabled. When enabled, the pixel color of the current and the previous frames is clamped. Clamping is available only when TAA is enabled.Return value
1 if TAA color clamping is enabled; otherwise, 0.void setTAADiagonalNeighbors( int neighbors )
Sets a value indicating if diagonally neighboring pixels are to be taken into account in the process of color clamping for TAA. This mode can be used for relatively static scenes when improved antialiasing is required. In case of a dynamic scene, blurring artefacts near the screen borders may appear.Arguments
- int neighbors - 1 to take diagonally neighboring pixels into account in the process of color clamping for TAA, 0 to ignore them.
int isTAADiagonalNeighbors( )
Returns a value indicating if diagonally neighboring pixels are to be taken into account in the process of color clamping for TAA. This mode can be used for relatively static scenes when improved antialiasing is required. In case of a dynamic scene, blurring artefacts near the screen borders may appear.Return value
1 if diagonally neighboring pixels are to be taken into account in the process of color clamping for TAA; otherwise, 0.void setTAAFixFlicker( int flicker )
Enables or disables the TAA fix flicker option. This option fixes flickering edges caused by TAA: it removes bright pixels by using the pixel brightness information from the previous frame. It is recommended to enable the option for bright thin ropes, wires and lines. The option is available only when TAA is enabled.Arguments
- int flicker - 1 to enable the TAA fix flicker option, 0 to disable it. The default value is 1.
int isTAAFixFlicker( )
Returns a value indicating if the TAA fix flicker option is enabled. This option fixes flickering edges caused by TAA: it removes bright pixels by using the pixel brightness information from the previous frame. It is recommended to enable the option for bright thin ropes, wires and lines. The option is available only when TAA is enabled.Return value
1 if the TAA fix flicker option is enabled; otherwise, 0.void setTAAFrameCount( float count )
Sets the frame count of TAA (Temporal Anti-Aliasing). Specifies the number of frames combined for pixels. The higher the value, the more frames are combined into the final image and the better anti-aliasing.Arguments
- float count - TAA frame count value. The default value is 30.0f.
float getTAAFrameCount( )
Returns the frame count of TAA (Temporal Anti-Aliasing). Specifies the number of frames combined for pixels. The higher the value, the more frames are combined into the final image and the better anti-aliasing.Return value
TAA frame count value.void setTAAMaxFrameCount( float count )
Sets the maximum frame count of TAA (Temporal Anti-Aliasing). Specifies the maximum number of frames combined for pixels that don't move relative to the screen space.Arguments
- float count - Maximum TAA frame count value. The default value is 60.0f.
float getTAAMaxFrameCount( )
Returns the maximum frame count of TAA (Temporal Anti-Aliasing). Specifies the maximum number of frames combined for pixels that don't move relative to the screen space.Return value
Maximum TAA frame count value.void setTAAMinFrameCount( float count )
Sets the minimum frame count of TAA (Temporal Anti-Aliasing). Specifies the minimum number of frames combined for fast moving pixels on the screen.Arguments
- float count - Minimum TAA frame count value. The default value is 4.0f.
float getTAAMinFrameCount( )
Returns the minimum frame count of TAA (Temporal Anti-Aliasing). Specifies the minimum number of frames combined for fast moving pixels on the screen.Return value
Minimum TAA frame count value.void setTAAPreserveDetails( float details )
Sets the detail level of TAA (Temporal Anti-Aliasing). The higher the value, the more detailed the image is. Can produce additional flickering.Arguments
- float details - TAA detail level value. The default value is 1.5f.
float getTAAPreserveDetails( )
Returns the detail level of TAA (Temporal Anti-Aliasing). The higher the value, the more detailed the image is. Can produce additional flickering.Return value
TAA detail level value.void setTAAVelocityClamping( int clamping )
Enables or disables the TAA velocity clamping option. This option controls the number of frames combined for pixels depending on the velocity in the fragment: the number of frames is clamped to the [Min frame count;Max frame count]. It reduces blurring in dynamic scenes with a lot of moving objects.Arguments
- int clamping - 1 to enable the TAA velocity clamping option, 0 to disable it. The default value is 1.
int isTAAVelocityClamping( )
Returns a value indicating if the TAA velocity clamping option is enabled. T This option controls the number of frames combined for pixels depending on the velocity in the fragment: the number of frames is clamped to the [Min frame count;Max frame count]. It reduces blurring in dynamic scenes with a lot of moving objects.Return value
1 if TAA velocity clamping is enabled; otherwise, 0.void setTAAVelocityThreshold( float threshold )
Sets the velocity threshold of TAA (Temporal Anti-Aliasing), at which pixels are treated as fast moving ones.Arguments
- float threshold - TAA velocity threshold value. The default value is 1.0f.
float getTAAVelocityThreshold( )
Returns the velocity threshold of TAA (Temporal Anti-Aliasing), at which pixels are treated as fast moving ones.Return value
TAA velocity threshold value.void setTerrainAnisotropy( int anisotropy )
Sets the terrain texture anisotropy level (degree of anisotropic filtering). Anisotropy for terrain has a huge impact for the performance if terrain has a lot of tiled detail materials as anisotropy filtering for the terrain is much slower than for the other objects.Arguments
- int anisotropy - Anisotropy level:
- 0 - anisotropy level 1.
- 1 - anisotropy level 2.
- 2 - anisotropy level 4 (by default).
- 3 - anisotropy level 8.
- 4 - anisotropy level 16.
int getTerrainAnisotropy( )
Returns the current terrain texture anisotropy level (degree of anisotropic filtering). Anisotropy for terrain has a big impact for the performance if terrain has a lot of tiled detail materials.Return value
Anisotropy level:- 0 - anisotropy level 1.
- 1 - anisotropy level 2.
- 2 - anisotropy level 4 (by default).
- 3 - anisotropy level 8.
- 4 - anisotropy level 16.
void setTerrainDisplacement( int displacement )
Enables or disables displacement mapping for the terrain.Arguments
- int displacement - 1 to enable displacement mapping for the terrain; 0 to disable it. The default value is 1.
int isTerrainDisplacement( )
Returns a value indicating if displacement mapping is enabled for the terrain.Return value
1 if displacement mapping is enabled for the terrain; otherwise, 0.void setTerrainDisplacementNormal( int normal )
Enables or disables use of normals in displacement mapping for terrain rendering.Arguments
- int normal - 1 to enable displacement mapping for the terrain; 0 to disable it. The default value is 1.
int isTerrainDisplacementNormal( )
Returns a value indicating if displacement mapping for terrain rendering uses normals.Return value
1 if displacement mapping for terrain rendering uses normals; otherwise, 0.void setTerrainHoles( int holes )
Sets a value indicating if decal-based terrain holes are enabled.Arguments
- int holes - 1 to enable decal-based terrain holes; otherwise, 0.
int isTerrainHoles( )
Returns a value indicating if decal-based terrain holes are enabled.Return value
1 if decal-based terrain holes are enabled; otherwise, 0.void setTerrainRefinedAlbedo( int albedo )
Sets the type of terrain albedo textures (refined or coarse).Arguments
- int albedo - 1 to use the refined texture, 0 to use the coarse texture. The default value is 1.
int isTerrainRefinedAlbedo( )
Returns a value indicating which type of terrain albedo textures (refined or coarse) is used.Return value
1 if refined texture is used, 0 if coarse texture is used.void setTerrainRefinedMask( int mask )
Sets the type of terrain mask textures (refined or coarse).Arguments
- int mask - 1 to use the refined texture, 0 to use the coarse texture. The default value is 1.
int isTerrainRefinedMask( )
Returns a value indicating which type of terrain mask textures (refined or coarse) is used.Return value
1 if refined texture is used, 0 if coarse texture is used.void setTerrainRefinedNormal( int normal )
Sets the type of terrain normal textures (refined or coarse).Arguments
- int normal - 1 to use the refined texture, 0 to use the coarse texture. The default value is 1.
int isTerrainRefinedNormal( )
Returns a value indicating which type of terrain normal textures (refined or coarse) is used.Return value
1 if refined texture is used, 0 if coarse texture is used.void setTerrainTriplanar( int triplanar )
Enables or disables triplanar texture mapping for the terrain.Arguments
- int triplanar - 1 to enable triplanar texture mapping for the terrain; 0 to use planar UV mapping instead.
int isTerrainTriplanar( )
Returns a value indicating if triplanar texture mapping is enabled for the terrain.Return value
1 if triplanar texture mapping is enabled for the terrain; otherwise, 0.void setTexturesAnisotropy( int anisotropy )
Sets the anisotropy level for textures (degree of anisotropic filtering).Arguments
- int anisotropy - Anisotropy level:
- 0 - anisotropy level 1.
- 1 - anisotropy level 2.
- 2 - anisotropy level 4.
- 3 - anisotropy level 8 (by default).
- 4 - anisotropy level 16.
int getTexturesAnisotropy( )
Returns current anisotropy level for textures (degree of anisotropic filtering).Return value
Anisotropy level:- 0 - anisotropy level 1.
- 1 - anisotropy level 2.
- 2 - anisotropy level 4.
- 3 - anisotropy level 8 (by default).
- 4 - anisotropy level 16.
void setTexturesFilter( int filter )
Sets the texture filtering mode.Arguments
- int filter - Texture filtering mode:
- 0 - bilinear filtering.
- 1 - trilinear filtering (by default).
int getTexturesFilter( )
Returns the current texture filtering mode.Return value
Texture filtering mode:- 0 - bilinear filtering.
- 1 - trilinear filtering (by default).
void setTexturesMaxResolution( int resolution )
Sets the maximum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.Arguments
- int resolution - Maximum resolution:
- 0 - 128 x 128.
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192 (by default).
- 7 - 16384 x 16384.
int getTexturesMaxResolution( )
Returns the current maximum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.Return value
Maximum resolution:- 0 - 128 x 128.
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192 (by default).
- 7 - 16384 x 16384.
void setTexturesMinResolution( int resolution )
Sets the minimum resolution of all textures. The engine doesn't compress existing textures: it uses specified mip maps of *.dds textures.Arguments
- int resolution - Minimum resolution:
- 0 - 128 x 128 (by default).
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
- 7 - 16384 x 16384.
int getTexturesMinResolution( )
Returns the current minimum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.Return value
Minimum resolution:- 0 - 128 x 128 (by default).
- 1 - 256 x 256.
- 2 - 512 x 512.
- 3 - 1024 x 1024.
- 4 - 2048 x 2048.
- 5 - 4096 x 4096.
- 6 - 8192 x 8192.
- 7 - 16384 x 16384.
void setTexturesQuality( int quality )
Sets the resolution of textures.Arguments
- int quality - One of the QUALITY_* pre-defined variables.
int getTexturesQuality( )
Returns the current resolution of textures.Return value
One of the QUALITY_* pre-defined variables.void setTransparentBlur( int blur )
Enables or disables transparent blur for materials. This option makes it possible to render matte transparent materials like matte glass.Arguments
- int blur - 1 to enable transparent blur for materials, 0 to disable it. The default value is 1.
int isTransparentBlur( )
Returns a value indicating if transparent blur is enabled for materials. This option makes it possible to render matte transparent materials like matte glass.Return value
1 if transparent blur is enabled for materials; otherwise, 0.void setViewport( const Ptr<Viewport> & viewport )
Sets a viewport for a main application window.Arguments
- const Ptr<Viewport> & viewport - Pointer to Viewport.
Ptr<Viewport> getViewport( )
Returns a main application window viewport.Return value
Pointer to Viewport.void setVirtualResolution( const Math::vec2 & resolution )
Sets virtual screen resolution. This option can be used to render video with high resolution (e.g. 8K) regardless of monitor's resolution.Arguments
- const Math::vec2 & resolution - Virtual screen resolution (X, Y), in pixels. The default value is (-1, -1).
Math::vec2 getVirtualResolution( )
Returns the current virtual screen resolution.Return value
Virtual screen resolution (X, Y), in pixels.void setVREmulation( int emulation )
Sets the VR-emulation mode.Arguments
- int emulation - VR-emulation mode:
- 0 - disabled (by default).
- 1 - HTC Vive emulation.
- 2 - HTC Vive Pro emulation.
- 3 - Oculus Rift emulation.
int getVREmulation( )
Returns the value indicating the current VR-emulation mode.Return value
VR-emulation mode:- 0 - disabled (by default).
- 1 - HTC Vive emulation.
- 2 - HTC Vive Pro emulation.
- 3 - Oculus Rift emulation.
void setWaterAnisotropy( int anisotropy )
Sets water texture anisotropy level.Arguments
- int anisotropy - Anisotropy level:
- 0 - anisotropy level 1.
- 1 - anisotropy level 2 (by default).
- 2 - anisotropy level 4.
- 3 - anisotropy level 8.
- 4 - anisotropy level 16.
int getWaterAnisotropy( )
Returns current water texture anisotropy level.Return value
Anisotropy level:- 0 - anisotropy level 1.
- 1 - anisotropy level 2 (by default).
- 2 - anisotropy level 4.
- 3 - anisotropy level 8.
- 4 - anisotropy level 16.
void setWaterEnvironmentProbes( int probes )
Enables or disables rendering of environment probes on the water surface.Arguments
- int probes - 1 to enable rendering of environment probes on the water surface, 0 to disable it. The default value is 1.
int isWaterEnvironmentProbes( )
Returns a value indicating if rendering of environment probes on the water surface is enabled.Return value
1 if rendering of environment probes on the water surface is enabled; otherwise, 0.void setWaterVoxelProbes( int probes )
Enables or disables voxel probes for water rendering.Arguments
- int probes - 1 to enable voxel probes for water rendering, 0 to disable it. The default value is 1.
int isWaterVoxelProbes( )
Returns a value indicating if voxel probes are enabled for water rendering.Return value
1 if voxel probes are enabled for water rendering; otherwise, 0.void setWaterLights( int lights )
Enables or disables rendering of lights on the water surface.Arguments
- int lights - 1 to enable rendering of lights on the water surface, 0 to disable it. The default value is 1.
int isWaterLights( )
Returns a value indicating if rendering of lights on the water surface is enabled.Return value
1 if rendering of lights on the water surface is enabled; otherwise, 0.void setWaterOpacityDepth( int depth )
Enables or disables writing depth data for water to the opacity buffer.Arguments
- int depth - 1 to enable writing depth data for water to the opacity buffer, 0 to disable it. The default value is 1.
int isWaterOpacityDepth( )
Returns a value indicating if depth data for water is written to the opacity buffer.Return value
1 if depth data for water is written to the opacity buffer; otherwise, 0.void setWaterRefractionQuality( int quality )
Sets the quality of water refraction.Arguments
- int quality - Refraction quality:
- 0 - low quality.
- 1 - medium quality.
- 2 - high quality (by default).
- 3 - ultra quality.
int getWaterRefractionQuality( )
Returns current quality of water refraction.Return value
Refraction quality:- 0 - low quality.
- 1 - medium quality.
- 2 - high quality (by default).
- 3 - ultra quality.
void setWaterShafts( int shafts )
Enables or disables rendering of underwater shafts.Arguments
- int shafts - 1 to enable rendering of underwater shafts, 0 to disable it. The default value is 1.
int isWaterShafts( )
Returns a value indicating if rendering of underwater shafts is enabled.Return value
1 if rendering of underwater shafts is enabled; otherwise, 0.void setWaterShorelineWetness( int wetness )
Enables or disables the wetness effect for objects near the shoreline.Arguments
- int wetness - 1 to enable shoreline wetness, 0 to disable it. The default value is 1.
int isWaterShorelineWetness( )
Returns a value indicating if the wetness effect for objects near the shoreline is enabled.Return value
1 if shoreline wetness is enabled; otherwise, 0.void setWaterSSR( int waterssr )
Enables or disables the SSR (Screen Space Reflections) effect for water.Arguments
- int waterssr - 1 to enable the SSR effect for water, 0 to disable.
int isWaterSSR( )
Returns the value indicating if the SSR (Screen Space Reflections) effect is enabled for water.Return value
1 if the SSR effect is enabled for water; otherwise, 0.void setWaterSSRIncreasedAccuracy( int accuracy )
Enables or disables increased accuracy for the water SSR (Screen Space Reflections). This option reduces visual artifacts by increasing accuracy of the last step.Arguments
- int accuracy - 1 to enable increased accuracy for the water SSR, 0 to disable. The default value is 0.
int isWaterSSRIncreasedAccuracy( )
Returns a value indicating if increased accuracy option is enabled for the water SSR (Screen Space Reflections).Return value
1 if increased accuracy is enabled for the water SSR; otherwise, 0.void setWaterSSRQuality( int quality )
Sets the resolution of water SSR (Screen Space Reflections).Arguments
- int quality - Water SSR quality:
- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
int getWaterSSRQuality( )
Returns the resolution of water SSR (Screen Space Reflections).Return value
Water SSR quality:- 0 - low quality.
- 1 - medium quality (by default).
- 2 - high quality.
- 3 - ultra quality.
Ptr<Texture> getWhite2DArrayTexture( )
Returns white 2D array texture.Return value
White 2D array texture.Ptr<Texture> getWhite2DTexture( )
Returns white 2D texture.Return value
White 2D texture.Ptr<Texture> getWhite3DTexture( )
Returns white 3D texture.Return value
White 3D texture.Ptr<Texture> getWhiteCubeTexture( )
Returns white Cube texture.Return value
White Cube texture.void setWireframeColor( const Math::vec4 & color )
Sets the color for the wireframe.Arguments
- const Math::vec4 & color - Wireframe color to be set.
Math::vec4 getWireframeColor( )
Returns the color of the wireframe.Return value
Wireframe color.int compressImage( Ptr<Image> & image, int quality = 1, int new_image_format = -1, int use_mip_maps = -1 )
Converts the image to a specified compressed format. If compression by the GPU is not supported, the Image::compress() method will be called instead.Arguments
- Ptr<Image> & image - Image to compress.
- int quality - Compression quality:
- 0 - fast compression, low compressed image quality.
- 1 - high compressed image quality, slow compression (by default).
- int new_image_format - Compressed texture format: one of the Texture::FORMAT_* variables. This is an optional argument. If no format is specified, default conversion will be performed (depending on the type of the source image).
- int use_mip_maps - Flag indicating whether texture mipmaps should be generated for the compressed image: 1 to generate mipmaps, 0 not to generate. This is an optional argument. If no value is specified, mipmaps will be generated only if the source image has the mipmaps.
Return value
1 if the image has been compressed successfully; otherwise, 0.int compressTexture( const Ptr<Texture> & texture, Ptr<Image> & destination, int quality = 1, int new_texture_format = -1, int use_mip_maps = -1 )
Compresses the given texture to the specified format.Arguments
- const Ptr<Texture> & texture - Source texture to compress.
- Ptr<Image> & destination - Image into which the compressed texture will be saved.
- int quality - Compression quality:
- 0 - fast compression, low compressed image quality.
- 1 - high compressed image quality, slow compression (by default).
- int new_texture_format - Compressed texture format: one of the Texture::FORMAT_* variables. This is an optional argument. If no format is specified, default conversion will be performed (depending on the type of the source image).
- int use_mip_maps - Flag indicating whether texture mipmaps should be generated for the compressed image: 1 to generate mipmaps, 0 not to generate. This is an optional argument. If no value is specified, mipmaps will be generated only if the source image has the mipmaps.
Return value
1 if the texture has been compressed successfully; otherwise, 0.void convertColorSpecularToMetalness( Math::vec4 & diffuse, Math::vec4 & specular, Math::vec4 & albedo, Math::vec4 & shading )
Performs color conversion from the specular workflow (diffuse, specular) to the metalness workflow (albedo, shading).Arguments
- Math::vec4 & diffuse - Input diffuse color.
- Math::vec4 & specular - Input specular color.
- Math::vec4 & albedo - Output albedo color.
- Math::vec4 & shading - Output shading color.
void convertImageSpecularToMetalness( const Ptr<Image> & diffuse, const Ptr<Image> & specular, Ptr<Image> & albedo, Ptr<Image> & shading )
Performs texture conversion from the specular workflow (diffuse, specular) to the metalness workflow (albedo, shading).Arguments
- const Ptr<Image> & diffuse - Input diffuse texture.
- const Ptr<Image> & specular - Input specular texture.
- Ptr<Image> & albedo - Output albedo texture.
- Ptr<Image> & shading - Output shading texture.
int createMipmapsCubeGGX( const Ptr<Image> & image, float quality )
Generates mipmaps for a cubemap using GGX BRDF microfacet model.Arguments
- const Ptr<Image> & image - Cubemap image. IMAGE_CUBE or IMAGE_CUBE_ARRAY types are accepted.
- float quality - Quality value within the [0.0f; 1.0f] range.
int createShorelineDistanceField( const Ptr<Image> & image, const Ptr<Image> & mask, int shoreline_radius, int blur_radius, int downsample_resolution )
Grabs a shoreline distance field texture with the specified parameters.Arguments
- const Ptr<Image> & image - Image to grab a shoreline texture to.
- const Ptr<Image> & mask - An R16 mask texture Image. Each pixel of the mask has the following color value:0 if water level at this point of the grid is above the terrain level; otherwise, 65535.
- int shoreline_radius - Shoreline radius value within the [4; 128] range. Padding distance (from the shore to the beginning of swash zone).
- int blur_radius - Blur radius value within the [0; 32] range. Higher values make shoreline smoother.
- int downsample_resolution - Texture resolution value, can be one of the following: 16, 32, 64, 128, 256, 512, 1024, 2048.
Return value
1 if the shoreline distance field texture is grabbed successfully; otherwise, 0.int loadSettings( const char * file )
Loads render settings from a given file.Arguments
- const char * file - Path to an XML file with desired settings.
Return value
1 if the settings are loaded successfully; otherwise, 0.int loadWorld( const Ptr<Xml> & xml )
Loads render state from the Xml.Arguments
- const Ptr<Xml> & xml - Xml smart pointer.
Return value
1 if the state is loaded successfully; otherwise, 0.void renderComputeMaterial( const Ptr<Material> & material, int width, int height, int depth = 1 )
Sets up a material and dispatches to compute shader. The material must have a post shader associated with it.Arguments
- const Ptr<Material> & material - Smart pointer to the material.
- int width - Local X work-group size of the compute shader.
- int height - Local Y work-group size of the compute shader.
- int depth - Local Z work-group size of the compute shader. The default value is 1.
void renderImage2D( const Ptr<Camera> & camera, const Ptr<Image> & image, int skip_flags )
Renders the scene into a 2D image in accordance with the specified parameters. The viewport position is taken from the camera created via Camera class.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Image> & image - Image to save the result to.
- int skip_flags - Skip the effects:
- VIEWPORT_SKIP_SHADOWS
- VIEWPORT_SKIP_VISUALIZER
- VIEWPORT_SKIP_SRGB
- VIEWPORT_SKIP_POSTEFFECTS
- VIEWPORT_SKIP_VELOCITY
- VIEWPORT_SKIP_DYNAMIC_REFLECTIONS
0 enables all the effects.
void renderImage2D( const Ptr<Camera> & camera, const Ptr<Image> & image, int width, int height, int hdr, int skip_flags )
Renders the scene into a 2D image of the given size in accordance with the specified parameters. The viewport position is taken from the camera created via Camera class.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Image> & image - Image to save the result to.
- int width - Width of the projected image, in units.
- int height - Height of the projected image, in units.
- int hdr - 1 - enable HDR, 0 - disable HDR.
- int skip_flags - Skip the effects:
- VIEWPORT_SKIP_SHADOWS
- VIEWPORT_SKIP_VISUALIZER
- VIEWPORT_SKIP_SRGB
- VIEWPORT_SKIP_POSTEFFECTS
- VIEWPORT_SKIP_VELOCITY
- VIEWPORT_SKIP_DYNAMIC_REFLECTIONS
0 enables all the effects.
void renderImageCube( const Ptr<Camera> & camera, const Ptr<Image> & image, int skip_flags )
Renders the scene into a cube map image in accordance with the specified parameters.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Image> & image - Image to save the result to.
- int skip_flags - Skip the effects:
- VIEWPORT_SKIP_SHADOWS
- VIEWPORT_SKIP_VISUALIZER
- VIEWPORT_SKIP_SRGB
- VIEWPORT_SKIP_POSTEFFECTS
- VIEWPORT_SKIP_VELOCITY
- VIEWPORT_SKIP_DYNAMIC_REFLECTIONS
0 enables all the effects.
void renderImageCube( const Ptr<Camera> & camera, const Ptr<Image> & image, int size, int hdr, int skip_flags, int local_space = 0 )
Renders the scene into a cube map in accordance with the specified parameters. The viewport position is taken from the camera created via Camera class.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Image> & image - Image to save the result to.
- int size - Texture dimensions (cube map edge size).
- int hdr - 1 - enable HDR; 0 - disable HDR.
- int skip_flags - Skip the effects:
- VIEWPORT_SKIP_SHADOWS
- VIEWPORT_SKIP_VISUALIZER
- VIEWPORT_SKIP_SRGB
- VIEWPORT_SKIP_POSTEFFECTS
- VIEWPORT_SKIP_VELOCITY
- VIEWPORT_SKIP_DYNAMIC_REFLECTIONS
0 enables all the effects.
- int local_space - 1 - local space coordinates; 0 - world space coordinates.
void renderNodeImage2D( const Ptr<Camera> & camera, const Ptr<Node> & node, const Ptr<Image> & image, int skip_flags, int light_usage, const char * environment_texture_name )
Renders the given node into a 2D image in accordance with the specified parameters. The viewport position is taken from the camera created via Camera class. The node can be rendered using the specific type of lighting and environment cubemap.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Node> & node - Node to be rendered.
- const Ptr<Image> & image - Image to save the result to.
- int skip_flags - Skip the effects. One of the SKIP_* variables should be specified. 0 enables all the effects.
- int light_usage - Sets the light sources that will affect the node (one of the USAGE_*_LIGHTING Viewport class variables.)
- const char * environment_texture_name - Path to the environment cubemap to be used. Takes effect if the first (auxiliary light) or second (node light) lighting mode is used (see the light_usage argument above). In case LightWorld is used (zero mode), the environment cubemap used for the current world will be used.
void renderNodeImage2D( const Ptr<Camera> & camera, const Ptr<Node> & node, const Ptr<Image> & image, int width, int height, int hdr, int skip_flags, int light_usage, const char * environment_texture_name )
Renders the 2D image of the given node in accordance with the specified parameters. The viewport position is taken from the camera created via Camera class. The node can be rendered using the specific type of lighting and environment cubemap.Arguments
- const Ptr<Camera> & camera - Camera to be used.
- const Ptr<Node> & node - Node to be rendered.
- const Ptr<Image> & image - Image to save the result to.
- int width - Width of the image, in units.
- int height - Height of the image, in units.
- int hdr - HDR flag. This parameter determines the format of the 2D image:
- 1 - image format will be set to RGBA16F. It means that the HDR image buffer will store pixel values outside the [0;1] range (i.e. both negative and positive values).
- 0 - image format will be set to RGBA8.
- int skip_flags - Skip the effects. One of the SKIP_* variables should be specified. 0 enables all the effects.
- int light_usage - Sets the light sources that will affect the node (one of the USAGE_*_LIGHTING Viewport class variables).
- const char * environment_texture_name - Path to the environment cubemap to be used. Takes effect if the first (auxiliary light) or second (node light) lighting mode is used (see the light_usage argument above). In case LightWorld is used (zero mode), the environment cubemap used for the current world will be used.
void renderPostMaterial( const Ptr<Material> & material, const Ptr<Texture> & color_texture )
Renders a post process material with the specified color texture.TextureRenderPtr texture_render;
TexturePtr texture;
TexturePtr texture_2;
//...
texture_render->setColorTexture(0, texture);
texture_render->enable();
MaterialPtr material = Materials::get()->findMaterial("new_material_post");
Render::get()->renderPostMaterial(material, texture_2);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const Ptr<Material> & material - Material smart pointer.
- const Ptr<Texture> & color_texture - Color texture smart pointer.
void renderPostMaterial( int pass, const Ptr<Material> & material, const Ptr<Shader> & shader )
Renders a post-process material with the specified shader for the given rendering pass.TextureRenderPtr texture_render;
MaterialPtr material_post;
TexturePtr texture;
vec4 color = vec4::ONE;
//...
texture_render->setColorTexture(0, texture);
texture_render->enable();
material_post = Materials::get()->findMaterial("new_material_post");
ShaderPtr shader = material_post->fetchShader(Render::PASS_POST);
shader->bind();
shader->setParameterFloat("color", color.get(), 4);
shader->flushParameters();
Render::get()->renderPostMaterial(Render::PASS_POST, material_post, shader);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- int pass - Rendering pass number in range [0;NUM_PASSES) (one of the PASS_* variables).
- const Ptr<Material> & material - Material smart pointer.
- const Ptr<Shader> & shader - Shader smart pointer.
void renderPostMaterial( int pass, const Ptr<Material> & material )
Renders post-process material for the given rendering pass.TextureRenderPtr texture_render;
MaterialPtr material_post;
TexturePtr albedo;
//...
texture_render->setColorTexture(0, albedo);
texture_render->enable();
material_post = Materials::get()->findMaterial("new_material_post");
Render::get()->renderPostMaterial(Render::PASS_POST, material_post);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- int pass - Rendering pass number in range [0;NUM_PASSES) (one of the PASS_* variables).
- const Ptr<Material> & material - Material smart pointer.
void renderPostMaterial( const Ptr<Material> & material )
Renders a post-process material.TextureRenderPtr texture_render;
//...
texture_render->enable();
MaterialPtr material = Materials::get()->>findMaterial("new_materia_post");
Render::get()->renderPostMaterial(material);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const Ptr<Material> & material - Material smart pointer.
void renderPostMaterial( const char * material_name )
Renders a post-process material with the given name.TextureRenderPtr texture_render;
//...
texture_render->enable();
Render::get()->renderPostMaterial("new_material_post");
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const char * material_name - Material name.
void renderPostMaterial( const char * material_name, const char * texture_name, const Ptr<Texture> & texture )
Renders a post-process material with the given texture.TextureRenderPtr texture_render;
TexturePtr texture;
TexturePtr texture_2;
//...
texture_render->setColorTexture(0, texture);
texture_render->enable();
render->renderPostMaterial("new_material_post", "color", texture_2);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const char * material_name - Material name.
- const char * texture_name - Texture name in the material.
- const Ptr<Texture> & texture - Texture smart pointer.
void renderPostMaterial( const char * material_name, const Ptr<Texture> & color_texture )
Renders a post-process material with the specified name and the color texture.TextureRenderPtr texture_render;
TexturePtr texture;
TexturePtr texture_2;
//...
texture_render->setColorTexture(0, texture);
texture_render->enable();
Render::get()->renderPostMaterial("new_material_post", texture_2);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const char * material_name - Material name.
- const Ptr<Texture> & color_texture - Color texture smart pointer.
void renderPostMaterial( const Ptr<Material> & material, const char * texture_name, const Ptr<Texture> & texture )
Renders a post-process material with the given texture. For example:TextureRenderPtr texture_render;
TexturePtr texture;
TexturePtr texture_2;
//...
texture_render->setColorTexture(0, texture);
texture_render->enable();
MaterialPtr material = Materials::get()->findMaterial("new_material_post");
render->renderPostMaterial(material, "color", texture_2);
texture_render->disable();
texture_render->unbindColorTexture();
Arguments
- const Ptr<Material> & material - Material smart pointer.
- const char * texture_name - Texture name in material.
- const Ptr<Texture> & texture - Texture smart pointer.
void renderProcedurals( const Vector< Ptr<Material> > & materials )
Renders post-process materials with procedural textures (calculated on GPU using custom shaders) that are assigned to surfaces.Arguments
- const Vector< Ptr<Material> > & materials - Procedural materials list.
void renderTAA( const Ptr<Texture> & color_texture, const Ptr<Texture> & color_old_texture )
Renders the TAA filter.TextureRenderPtr texture_render;
TexturePtr buffer;
TexturePtr buffer_old;
TexturePtr buffer_taa;
//...
texture_render->setColorTexture(0, buffer_taa);
texture_render->enable();
Render::get()->renderTAA(buffer, buffer_old);
texture_render->disable();
Arguments
- const Ptr<Texture> & color_texture - Color texture smart pointer.
- const Ptr<Texture> & color_old_texture - Old color texture smart pointer.
int restoreState( const Ptr<Stream> & stream )
Restores a render state from the stream.Arguments
- const Ptr<Stream> & stream - Stream to restore a state from.
Return value
1 if the state is restored successfully; otherwise, 0.int saveSettings( const char * file )
Saves the current renderer settings to a given file.Arguments
- const char * file - Path to a target file.
Return value
1 if the settings are saved successfully; otherwise, 0.int saveState( const Ptr<Stream> & stream )
Saves a render state into the stream.Arguments
- const Ptr<Stream> & stream - Stream to save a state into.
Return value
1 if the state is saved successfully; otherwise, 0.int saveWorld( const Ptr<Xml> & xml )
Saves the render state into the given Xml node.Arguments
- const Ptr<Xml> & xml - Xml node.
Return value
1 if the state is saved successfully; otherwise, 0.void setEnvironmentHazeGradient( int gradient )
Sets the environment haze gradient mode.Arguments
- int gradient - Haze gradient mode:
- 0 should be used for short distance range (e.g. near-surface haze).
- 1 should be used for long distance range (e.g. hazy mountains).
int getEnvironmentHazeGradient( )
Returns the current environment haze gradient mode.Return value
Haze gradient mode:- 0 for short distance range (e.g. near-surface haze).
- 1 for long distance range (e.g. hazy mountains).
Math::vec4 getEnvironmentHazeColor( )
Returns the current haze color for the preset that overlays the other ones.// get a haze color for the preset that overlays the others
Render::get()->getEnvironmentHazeColor();
// get a haze color for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->getHazeColor();
Return value
Haze color.float getEnvironmentHazeDensity( )
Returns the haze density set for the preset that overlays the other ones. To get the haze density for the specific preset, use RenderEnvironmentPreset::getHazeDensity().// get a haze density for the preset that overlays the others
Render::get()->getEnvironmentHazeDensity();
// get a haze density for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->geHazeDensity();
Return value
Haze density.float getEnvironmentHazeMaxDistance( )
Returns the distance starting at which the haze becomes completely solid, so nothing will be seen behind. To get the haze maximum visibility distance for the specific preset, use RenderEnvironmentPreset::getHazeMaxDistance().// get a haze maximum visibility distance for the preset that overlays the others
Render::get()->getEnvironmentHazeMaxDistance();
// get a haze maximum visibility distance for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->getHazeMaxDistance();
Return value
Haze maximum visibility distance.float getEnvironmentSkyIntensity( )
Returns the intensity of the environment sky set for the preset that overlays the other ones. To get the sky intensity for the specific preset, use RenderEnvironmentPreset::getSkyIntensity().// get a sky intensity for the preset that overlays the others
Render::get()->getEnvironmentSkyIntensity();
// get a sky intensity for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->getSkyIntensity();
Return value
Intensity value of the environment sky.float getEnvironmentReflectionIntensity( )
Returns the intensity of the environment reflections for the preset that overlays the other ones. 0 value means no environment reflections for the preset. To get the reflection intensity for the specific preset, use RenderEnvironmentPreset::getReflectionIntensity().// get a reflection intensity for the preset that overlays the others
Render::get()->getEnvironmentReflectionIntensity();
// get a reflection intensity for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->getReflectionIntensity();
Return value
The intensity value of the environment reflections.float getEnvironmentAmbientIntensity( )
Returns the intensity of the environment ambient lighting for the preset that overlays the other ones. 0 value means no environment ambient lighting for the preset. The higher the value, the more ambient lighting affects environment. To get the ambient intensity for the specific preset, use RenderEnvironmentPreset::getAmbientIntensity().// get an ambient intensity for the preset that overlays the others
Render::get()->getEnvironmentAmbientIntensity();
// get an ambient intensity for the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
preset->getAmbientIntensity();
Return value
The intensity value of environment ambient lighting. The value can be greater than 1.0f.Ptr<RenderEnvironmentPreset> getEnvironmentPreset( int num )
Returns the environment preset of the given number.// get the second environment preset
RenderEnvironmentPresetPtr preset = Render::get()->getEnvironmentPreset(1);
// print the sky intensity of the obtained preset
Log::message("%f\n", preset->getSkyIntensity());
Arguments
- int num - The number of the environment preset. The value is clamped to the [0;2] range.
Return value
Environment preset.int getTAASamples( )
Returns the number of the sample offsets performed during sub pixel jittering. By the minimum value of 1, there is no offsets, and, therefore, no anti-aliasing.Return value
The number of the sample offsets:- 0 - 1 offset
- 1 - 4 offsets
- 2 - 8 offsets
- 3 - 16 offsets
int isFXAA( )
Returns the value indicating if FXAA (post-process anti-aliasing) is enabled.Return value
1 if FXAA is enabled; otherwise, 0.void setTAACatmullResampling( int resampling )
Toggles Catmull-Rom resampling on and off. The option allows you to reduce image blurring when the camera moves forward/backward. It is recommended to disable resampling at low settings.Arguments
- int resampling - 1 to enable Catmull-Rom resampling, 0 to disable it.
int isTAA( )
Returns the value indicating if TAA is enabled.Return value
1 if TAA is enabled; otherwise, 0.void setTAASamples( int samples )
Sets the number of the sample offsets performed during sub pixel jittering. By the minimum value of 1, there will be no offsets, and, therefore, no anti-aliasing. The parameter allows reducing image jittering and blurring.Arguments
- int samples - The number of the sample offsets:
- 0 - 1 offset
- 1 - 4 offsets
- 2 - 8 offsets
- 3 - 16 offsets
void setTAAPixelOffset( float offset )
Sets the size of the sample offset performed during sub pixel jittering. You can specify the offset that is less than a pixel: for example, if you specify 0.5, frames will shift to half a pixel. It reduces image jittering and blurring.Arguments
- float offset - Size of the sample offset.
int isTAACatmullResampling( )
Returns the value indicating if Catmull-Rom resampling is enabled. The option allows you to reduce image blurring when the camera moves forward/backward. It is recommended to disable resampling at low settings.Return value
1 if Catmull-Rom resampling is enabled; otherwise, 0.void setTAA( int taa )
Toggles TAA on and off.Arguments
- int taa - 1 to enable TAA, 0 to disable it.
void setFXAA( int fxaa )
Toggles FXAA (post-process anti-aliasing) on and off.Arguments
- int fxaa - 1 to enable FXAA, 0 to disable it.
float getTAAPixelOffset( )
Returns the size of the sample offset performed during sub pixel jittering. The offset can be less than a pixel: for example, if 0.5 is set, frames will shift to half a pixel.Return value
Size of the sample offset.int isCameraEffectsTemporalFiltering( )
Returns the value indicating if temporal filtering is enabled. Temporal filtering reduces flickering of the bloom effect on the small bright objects (such flickering may appear when the camera moves). For example, it can be used in scenes with industrial pipes.Return value
1 if temporal filtering is enabled; otherwise, 0.void setCameraEffectsTemporalFiltering( int filtering )
Toggles temporal filtering on and off. Temporal filtering reduces flickering of the bloom effect on the small bright objects (such flickering may appear when the camera moves). For example, it can be used in scenes with industrial pipes.Arguments
- int filtering - 1 to enable temporal filtering; 0 to disable it.
void setSSBevelQuality( int quality )
Sets the quality mode for the screen-space bevels.Arguments
- int quality - The quality mode:
- 0 - low
- 1 - medium (by default)
- 2 - high
int isSSBevel( )
Returns the value indicating if the screen-space bevels are enabled.Return value
1 if the effect is enabled; otherwise, 0.float getSSBevelRadius( )
Returns the current size of the screen-space bevel effect.Return value
Size of the bevel effect in range [0.0f; 10.0f]. The default value is 10.0f.void setSSBevelVertexNormal( int normal )
Sets the mode of the screen-space bevels rendering:- Better Edges smooths vertex and surface normals of the object. In this mode, the relief created by using Normal Mapping will be smoothed along with the mesh edges.
- Better Normals smooths only vertex normals. In this mode, only edges of the mesh geometry will be bevelled.
Arguments
- int normal - The mode of bevels rendering:
- 0 - the Better Edges mode.
- 1 - the Better Normals mode.
void setSSBevel( int bevel )
Sets the value indicating if the screen-space bevels are enabled.Arguments
- int bevel - 1 to enable the effect, 0 to disable it.
void setSSBevelRadius( float radius )
Sets the size of the screen-space bevel effect.Arguments
- float radius - Size of the bevel effect in range [0.0f; 10.0f]. The default value is 10.0f.
int getSSBevelVertexNormal( )
Returns the current mode of the screen-space bevels rendering:- Better Edges smooths vertex and surface normals of the object. In this mode, the relief created by using Normal Mapping will be smoothed along with the mesh edges.
- Better Normals smooths only vertex normals. In this mode, only edges of the mesh geometry will be bevelled.
Return value
The mode of bevels rendering:- 0 - the Better Edges mode.
- 1 - the Better Normals mode.
int getSSBevelQuality( )
Returns the current quality mode for the screen-space bevels.Return value
The quality mode:- 0 - low
- 1 - medium (by default)
- 2 - high
int isSSBevelNoise( )
Returns the value indicating if the noise that smooths bevels is enabled. It is recommended to use the noise with TAA enabled to avoid visual artifacts. The bevel noise is applied at a certain distance from the camera (i.e. if the camera is too far from the object with bevels, the noise won't be applied).Return value
1 if smoothing is enabled; otherwise, 0.void setSSBevelNoise( int noise )
Sets the value indicating if the noise that smooths bevels is enabled. It is recommended to use the noise with TAA enabled to avoid visual artifacts. The bevel noise is applied at a certain distance from the camera (i.e. if the camera is too far from the object with bevels, the noise won't be applied).Arguments
- int noise - 1 to enable smoothing, 0 to disable it.
void * addCallback( int callback, Unigine::CallbackBase1< Unigine::Renderer * > * func )
Adds a callback for the specified stage of the rendering sequence. Callback functions can be used to get access to buffers and matrices at intermediate stages of the rendering sequence. Some of them are read-only, but most of them can be modified ad hoc.Callback function must be as follows:void callback_name(Renderer *renderer){
/* .. */
}
Arguments
- int callback - Stage of the rendering sequence for which a callback is to be added. One of the CALLBACK_* variables.
The _BEGIN prefix corresponds to the beginning of the rendering pass, _END - to its completion.
- Unigine::CallbackBase1< Unigine::Renderer * > * func - Callback pointer.
Return value
ID of the last added callback of the specified type, if the callback was added successfully; otherwise, nullptr. This ID can be used to remove this callback when necessary.void clearCallbacks( int callback )
Clears all added callbacks for the specified stage of the rendering sequence. Callback functions can be used to get access to buffers and matrices at intermediate stages of the rendering sequence. Some of them are read-only, but most of them can be modified ad hoc.Arguments
- int callback - Stage of the rendering sequence for which the callbacks are to be cleared. One of the CALLBACK_* variables.
The _BEGIN prefix corresponds to the beginning of the rendering pass, _END - to its completion.
bool removeCallback( int callback, void * id )
Removes the specified callback from the list of callbacks for the specified stage of the rendering sequence. Callback functions can be used to get access to buffers and matrices at intermediate stages of the rendering sequence. Some of them are read-only, but most of them can be modified ad hoc.Arguments
- int callback - Stage of the rendering sequence for which the callback is to be removed. One of the CALLBACK_* variables.
The _BEGIN prefix corresponds to the beginning of the rendering pass, _END - to its completion.
- void * id - Callback ID obtained when adding it.
Return value
True if the callback with the given ID was removed successfully; otherwise false.void setMaxFPS( float maxfps )
Sets a maximum FPS value, to which rendering FPS is to be clamped.Arguments
- float maxfps - Maximum FPS value for clamping. 0 - disables FPS clamping. The default value is 0.
float getMaxFPS( )
Returns the current maximum FPS value, to which rendering FPS is clamped.Return value
Current maximum FPS value for clamping. 0 - FPS clamping is disabled.void setCameraMode( int mode )
Sets the camera mode: classic or physically-based.- If the physically-based camera mode is set, the real-world values are used to set up lighting and camera exposure: ISO, shutter speed, F-stop. At default values of these parameters, the static exposure value is near 1.
For the physically-based mode, the exposure mode should be set to Static to avoid exposure issues.
- If the classic mode is set, the exposure is set by setExposure().
Arguments
- int mode - 0 for the classic camera mode; 1 for the physically-based camera mode.
int getCameraMode( )
Returns the current camera mode: classic or physically-based.- If the physically-based camera mode is set, the real-world values are used to set up lighting and camera exposure: ISO, shutter speed, F-stop. At default values of these parameters, the static exposure value is near 1.
For the physically-based mode, the exposure mode should be set to Static to avoid exposure issues.
- If the classic mode is set, the exposure is set by setExposure().
Return value
0 if the classic camera mode is set; 1 if the physically-based camera mode is set.void setISO( float iso )
Sets an ISO for static exposure calculation.Arguments
- float iso - ISO value.
float getISO( )
Returns the ISO used for static exposure calculation.Return value
ISO value.void setShutterSpeed( float speed )
Sets a shutter speed for static exposure calculation.Arguments
- float speed - Shutter speed.
float getShutterSpeed( )
Sets the shutter speed used for static exposure calculation.Return value
Shutter speed.void setFStop( float fstop )
Sets an F-stop value for static exposure calculation.Arguments
- float fstop - F-stop value.
float getFStop( )
Returns the F-stop value used for static exposure calculation.Return value
F-stop value.void setDepthPrePass( int pass )
Enables or disables depth pre-pass rendering. When enabled, an additional depth buffer rendering pass is performed in the beginning of the rendering sequence.Arguments
- int pass - 1 to enable depth pre-pass, 0 to disable it. The default value is 0.
int isDepthPrePass( )
Returns a value indicating if depth pre-pass rendering is enabled. When enabled, an additional depth buffer rendering pass is performed in the beginning of the rendering sequence.Return value
1 if depth pre-pass rendering is enabled; otherwise, 0.void setStereoHiddenArea( int area )
Sets culling mode for pixels, that are not visible in VR mode. This parameter is used for performance optimization.Arguments
- int area - Culling mode for pixels that are not visible in VR mode. One of the following values:
- 0 - hidden area culling is disabled (by default).
- 1 - OpenVR-based culling mode. Culling is performed using meshes returned by OpenVR.
Culling result depends on HMD used.
- 2 - Custom culling mode. Culling is performed using mesehes returned by OpenVR and an oval or circular mesh determined by custom adjustable parameters (See the setStereoHiddenAreaTransform() method.
int getStereoHiddenArea( )
Returns the current culling mode for pixels, that are not visible in VR mode. This parameter is used for performance optimization.Return value
Current culling mode for pixels that are not visible in VR mode. One of the following values:- 0 - hidden area culling is disabled (by default).
- 1 - OpenVR-based culling mode. Culling is performed using meshes returned by OpenVR.
Culling result depends on HMD used.
- 2 - Custom culling mode. Culling is performed using meshes returned by OpenVR and an oval or circular mesh determined by custom adjustable parameters (See the setStereoHiddenAreaTransform() method.
void setStereoHiddenAreaExposureTransform( const Math::vec4 & transform )
Sets the area to be used for exposure calculation, when culling of pixels, that are not visible in VR mode, is used. Correction of this area is used to avoid visual artefacts when clipped pixels affect exposure in visible areas.Arguments
- const Math::vec4 & transform - Four-component vector (X, Y, Z, W), that determines a rectangular area to be used for exposure calculation, when culling of pixels, that are not visible in VR mode, is used:
- First two components (X, Y) - sizes along the X and Y axes respectively.
- Second two components (Z, W) - offset values along the X and Y axes respectively.
These components are ignored when hidden area culling mode is set to 2
Math::vec4 getStereoHiddenAreaExposureTransform( )
Sets the area to be used for exposure calculation, when culling of pixels, that are not visible in VR mode, is used. Correction of this area is used to avoid visual artefacts when clipped pixels affect exposure in visible areas.Return value
Four-component vector (X, Y, Z, W), that determines a rectangular area to be used for exposure calculation, when culling of pixels, that are not visible in VR mode, is used:- First two components (X, Y) - sizes along the X and Y axes respectively.
- Second two components (Z, W) - offset values along the X and Y axes respectively.
These components are ignored when hidden area culling mode is set to 2
void setStereoHiddenAreaTransform( const Math::vec4 & transform )
Sets the size and offset parameters for a new oval or circular mesh to be used for culling pixels, that are not visible in VR mode.This custom circular mesh is used only when hidden area culling mode is set to 2.
To set the value via the console, use the render_stereo_hidden_area_transformconsole command.Arguments
- const Math::vec4 & transform - Four-component vector (X, Y, Z, W), that determines an area to be used for exposure calculation, when culling of pixels, that are not visible in VR mode, is used:
- First two components (X, Y) - sizes along the X and Y axes respectively.
- Second two components (Z, W) - offset values along the X and Y axes respectively.
These components are ignored when hidden area culling mode is set to 2
Math::vec4 getStereoHiddenAreaTransform( )
Returns the current size and offset parameters for an oval or circular mesh used for culling pixels, that are not visible in VR mode.This custom circular mesh is used only when hidden area culling mode is set to 2.
To get the value via the console, use the render_stereo_hidden_area_transformconsole variable.Return value
Four-component vector (X, Y, Z, W), that determines an oval or circular mesh used for culling pixels, that are not visible in VR mode:- First two components (X, Y) - sizes along the X and Y axes respectively.
- Second two components (Z, W) - offset values along the X and Y axes respectively.
void setStereoReprojection( int reprojection )
Sets stereo reprojection mode for VR. This mode enables to render 45 FPS as 90 FPS. Instead of rendering a picture for both eyes each frame, it is rendered for one of them, while the picture for the other is obtained by making reprojection of the rendered one, next time the picture is rendered for the second eye and reprojected for the first one, and so on.It is recommended to enable stereo reprojection in the following cases:
- you have a stable 70-80 fps and just need some extra boost to get to 90
- you have a fluctuating fps (like 90, then 45, and 90 again), in this case reprojection will help you to get stable 90
In case if your initial fps is below 45, reprojection will half the framerate, and you'll end up having a completely messed up image. In this case reprojection should be disabled.
To set the value via the console, use the render_stereo_reprojectionconsole command.
Arguments
- int reprojection - Reprojection mode for VR to be used. One of the following values:
- 0 - disabled (by default)
- 1 - dynamic reprojection (slower, but more accurate, more pronounced ghost effect)
- 2 - fast reprojection (fast, reduced ghost effect, but clipping of frontal parts of moving objects may occur)
int getStereoReprojection( )
Returns the current stereo reprojection mode for VR. This mode enables to render 45 FPS as 90 FPS. Instead of rendering a picture for both eyes each frame, it is rendered for one of them, while the picture for the other is obtained by making reprojection of the rendered one, next time the picture is rendered for the second eye and reprojected for the first one, and so on.It is recommended to enable stereo reprojection in the following cases:
- you have a stable 70-80 fps and just need some extra boost to get to 90
- you have a fluctuating fps (like 90, then 45, and 90 again), in this case reprojection will help you to get stable 90
In case if your initial fps is below 45, reprojection will half the framerate, and you'll end up having a completely messed up image. In this case reprojection should be disabled.
To get the value via the console, use the render_stereo_reprojectionconsole variable.
Return value
Current reprojection mode for VR. One of the following values:- 0 - disabled (by default)
- 1 - dynamic reprojection (slower, but more accurate, more pronounced ghost effect)
- 2 - fast reprojection (fast, reduced ghost effect, but clipping of frontal parts of moving objects may occur)
void setStereoReprojectionFixBlur( int blur )
Sets the value indicating if improved blur reduction is enabled for screen during stereo reprojection.Arguments
- int blur - 1 to enable improved blur reduction for screen during stereo reprojection, 0 to disable it. The default value is 1.
int isStereoReprojectionFixBlur( )
Returns the value indicating if improved blur reduction is enabled for screen during stereo reprojection.Return value
1 if improved blur reduction is enabled for screen during stereo reprojection; otherwise, 0.void setStereoReprojectionBuffersFixBlur( int blur )
Sets the value indicating if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection.Arguments
- int blur - 1 to enable improved blur reduction for buffers (SSAO, SSR, etc.) during stereo reprojection, 0 to disable it. The default value is 1.
int isStereoReprojectionBuffersFixBlur( )
Returns the value indicating if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection.Return value
1 if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection; otherwise, 0.void setStereoReprojectionThreshold( float threshold )
Sets the current threshold value to be used for stereo reprojection, when the fast reprojection mode (2) is used.Arguments
- float threshold - Threshold value to be used for fast stereo reprojection:
- Higher values reduce clipping of frontal parts of moving objects, but make the ghost effect more pronounced.
- Lower values reduce the ghost effect, but make clipping of frontal parts of moving objects more pronounced.
float getStereoReprojectionThreshold( )
Returns the current threshold value used for stereo reprojection, when the fast reprojection mode (2) is used.Return value
Current threshold value used for fast stereo reprojection:- Higher values reduce clipping of frontal parts of moving objects, but make the ghost effect more pronounced.
- Lower values reduce the ghost effect, but make clipping of frontal parts of moving objects more pronounced.
void setTAAAntialiasingInMotion( int motion )
Sets a value indicating if improved anti-aliasing in motion (for moving camera and objects) is enabled.Arguments
- int motion - 1 to enable improved anti-aliasing in motion (for moving camera and objects), 0 to disable it. The default value is 0.
int isTAAAntialiasingInMotion( )
Returns a value indicating if improved anti-aliasing in motion (for moving camera and objects) is enabled.Return value
1 if improved anti-aliasing in motion (for moving camera and objects) is enabled; otherwise, 0.void setWhiteBalance( int balance )
Sets a value indicating if automatic white balance correction is enabled.Arguments
- int balance - 1 to enable automatic white balance correction, 0 to disable it. The default value is 1.
int isWhiteBalance( )
Returns a value indicating if automatic white balance correction is enabled.Return value
1 if automatic white balance correction is enabled; otherwise, 0.void setWhiteBalanceIntensity( float intensity )
Sets the value of white balance correction intensity.Arguments
- float intensity - White balance correction intensity value in the range [0.0f, 1.0f]. The default value is 0.3f.
- By the minimum value of 0.0f, no white balance correction is performed.
- The higher the value, the stronger correction will be.
Do not set too high values for night-time and dimly lit scenes, as it may lead to heavy color distortion making the scene look totally unnatural.
float getWhiteBalanceIntensity( )
Returns the current value of white balance correction intensity.Return value
Current white balance correction intensity value in the range [0.0f, 1.0f]. The default value is 0.3f.void setWhiteBalanceAdaptationTime( float time )
Sets the time for the camera to adjust white balance.Arguments
- float time - Time period, in seconds, during which white balance correction is performed. If 0.0f is set, instant correction will be used. The default value is 1.0f.
It is recommended to use lower values, when possible, to make correction process unnoticeable, otherwise it'll be slow and will catch user's eye. However, setting too low values may result in abrupt switching of colors as the camera moves. So, adjust this parameter carefully to make transition smoooth. You can set it equal to the Exposure Adaptation value.
float getWhiteBalanceAdaptationTime( )
Returns the current the time set for the camera to adjust white balance.Return value
Time period, in seconds, during which white balance correction is performed. If 0.0f is set, instant correction will be used. The default value is 1.0f.void setSSDirt( int dirt )
Sets the value indicating if the Screen-Space Dirt (SSDirt) effect is enabled.Arguments
- int dirt - 1 to enable the SSDirt effect, 0 to disable it.
int isSSDirt( )
Returns the value indicating if the Screen-Space Dirt (SSDirt) effect is enabled.Return value
1 if the SSDirt effect is enabled; otherwise, 0.void setSSDirtAngleBias( float bias )
Sets the angle bias value to limit the SSDirt effect where information cannot be obtained. This parameter can be used to remove visual artefacts at the edges of polygons. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float bias - Angle bias value to be set in the range [0.0f; 1.0f]. The default value is 0.35f.
float getSSDirtAngleBias( )
Sets the angle bias value to limit the SSDirt effect where information cannot be obtained. This parameter can be used to remove visual artefacts at the edges of polygons. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Angle bias value in the range [0.0f; 1.0f].void setSSDirtCavityAlbedoTextureName( const char * name )
Sets the name of the albedo texture to be used for cavities. This texture defines dirt and dust color pattern for all cavities globally. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const char * name - Name of the albedo texture to be used for cavities.
const char * getSSDirtCavityAlbedoTextureName( )
Returns the name of the albedo texture used for cavities. This texture defines dirt and dust color pattern for all cavities globally. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Name of the albedo texture used for cavities.void setSSDirtCavityColor( const Math::vec4 & color )
Sets the color multiplier for the Albedo texture used for cavities (global dirt and dust color pattern). The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const Math::vec4 & color - Color multiplier for the Albedo texture used for cavities. By default, the color is white.
Math::vec4 getSSDirtCavityColor( )
Returns the current color multiplier for the Albedo texture used for cavities (global dirt and dust color pattern). The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Color multiplier for the Albedo texture used for cavities.void setSSDirtCavityExponent( float exponent )
Sets the exponent value that determines the rate of gradual change of intensity along the radius for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float exponent - Exponent value to be set for cavities. Lower values make gradual change of intensity smoother. The default value is 1.0f.
float getSSDirtCavityExponent( )
Returns the current exponent value that determines the rate of gradual change of intensity along the radius for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Exponent value set for cavities. Lower values make gradual change of intensity smoother. The default value is 1.0f.void setSSDirtCavityMetalness( float metalness )
Sets the metalness value for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float metalness - Metalness value for cavities in the range [0.0f, 1.0f]. When set to 0 (by default), the SSDirt effect does not modify metalness buffer in cavities.
float getSSDirtCavityMetalness( )
Returns the current metalness value for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current metalness value for cavities in the range [0.0f, 1.0f]. When set to 0 (by default), the SSDirt effect does not modify metalness buffer in cavities.void setSSDirtCavityMetalnessVisibility( float visibility )
Sets the metalness visibility value for cavities. A multiplier that determines the degree of impact of the effect on metalness buffer. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float visibility - Metalness visibility value to be set for cavities in the range [0.0f, 1.0f]. The higherthe value the more metalness buffer is affected. The default value is 0.0f.
float getSSDirtCavityMetalnessVisibility( )
Returns the current metalness visibility value for cavities. A multiplier that determines the degree of impact of the effect on metalness buffer. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current metalness visibility value for cavities.void setSSDirtCavityShadingTextureName( const char * name )
Sets the name of the shading texture to be used for cavities. Red channel of this texture defines metalness pattern for all cavities globally (other channels are ignored). The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const char * name - Name of the shading texture to be used for cavities.
const char * getSSDirtCavityShadingTextureName( )
Returns the name of the shading texture used for cavities. Red channel of this texture defines metalness pattern for all cavities globally (other channels are ignored). The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Name of the shading texture used for cavities.void setSSDirtCavityTextureSize( float size )
Sets the scaling factor for the textures used for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float size - Scaling factor to be set for the textures used for cavities. The default value is 1.0f
float getSSDirtCavityTextureSize( )
Returns the current scaling factor for the textures used for cavities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current scaling factor for the textures used for cavities.void setSSDirtConvexityAlbedoTextureName( const char * name )
Sets the name of the albedo texture to be used for convexities. This texture defines wear and scratch color pattern for all convexities globally. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const char * name - Name of the albedo texture to be used for convexities.
const char * getSSDirtConvexityAlbedoTextureName( )
Returns the name of the albedo texture used for convexities. This texture defines wear and scratch color pattern for all convexities globally. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Name of the albedo texture used for convexities.void setSSDirtConvexityColor( const Math::vec4 & color )
Sets the color multiplier for the Albedo texture used for convexities (global wear and scratch color pattern). The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const Math::vec4 & color - Color multiplier for the Albedo texture used for convexities. By default, the color is white.
Math::vec4 getSSDirtConvexityColor( )
Returns the current color multiplier for the Albedo texture used for convexities (global wear and scratch color pattern). The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Color multiplier for the Albedo texture used for convexities.void setSSDirtConvexityExponent( float exponent )
Sets the exponent value that determines the rate of gradual change of intensity along the radius for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float exponent - Exponent value to be set for convexities. Lower values make gradual change of intensity smoother. The default value is 1.0f.
float getSSDirtConvexityExponent( )
Returns the current exponent value that determines the rate of gradual change of intensity along the radius for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Exponent value set for convexities. Lower values make gradual change of intensity smoother. The default value is 1.0f.void setSSDirtConvexityMetalness( float metalness )
Sets the metalness value for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float metalness - Metalness value for convexities in the range [0.0f, 1.0f]. When set to 0 (by default), the SSDirt effect does not modify metalness buffer in convex areas.
float getSSDirtConvexityMetalness( )
Returns the current metalness value for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current metalness value for convexities in the range [0.0f, 1.0f]. When set to 0 (by default), the SSDirt effect does not modify metalness buffer in convex areas.void setSSDirtConvexityMetalnessVisibility( float visibility )
Sets the metalness visibility value for convexities. A multiplier that determines the degree of impact of the effect on metalness buffer. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float visibility - Metalness visibility value to be set for convexities in the range [0.0f, 1.0f]. The higherthe value the more metalness buffer is affected. The default value is 0.0f.
float getSSDirtConvexityMetalnessVisibility( )
Returns the current metalness visibility value for convexities. A multiplier that determines the degree of impact of the effect on metalness buffer. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current metalness visibility value for convexities.void setSSDirtConvexityShadingTextureName( const char * name )
Sets the name of the shading texture to be used for convexities. Red channel of this texture defines metalness pattern for all convexities globally (other channels are ignored). The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- const char * name - Name of the shading texture to be used for convexities.
const char * getSSDirtConvexityShadingTextureName( )
Returns the name of the shading texture used for convexities. Red channel of this texture defines metalness pattern for all convexities globally (other channels are ignored). The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Name of the shading texture used for convexities.void setSSDirtConvexityTextureSize( float size )
Sets the scaling factor for the textures used for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float size - Scaling factor to be set for the textures used for convexities. The default value is 1.0f
float getSSDirtConvexityTextureSize( )
Returns the current scaling factor for the textures used for convexities. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current scaling factor for the textures used for convexities.void setSSDirtIncreaseAccuracy( int accuracy )
Enables or disables increased accuracy for the SSDirt effect. This option should be used to remove visual artefacts along the screen edges, in case if they appear. Otherwise, it shoud be disabled. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- int accuracy - 1 to enable increased accuracy for the SSDirt effect, 0 to disable it. The default value is 0.
int isSSDirtIncreaseAccuracy( )
Returns a value indicating if increased accuracy for the SSDirt effect is enabled. This option should be used to remove visual artefacts along the screen edges, in case if they appear. Otherwise, it shoud be disabled. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
1 if increased accuracy for the SSDirt effect is enabled; otherwise, 0.void setSSDirtIntensity( float intensity )
Sets the intensity of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float intensity - Intensity of the SSDirt effect.
- By the minimum value of 0.0f, the effect is not visible.
- Higher values make the effect more pronounced.
float getSSDirtIntensity( )
Returns the current intensity of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current intensity of the SSDirt effect.- By the minimum value of 0.0f, the effect is not visible.
- Higher values make the effect more pronounced.
void setSSDirtPerspective( float perspective )
Sets the perspective value,that determines the degree of impact of distance from the camera on the radius of the Screen-Space Dirt effect:- 0.0f - radius of the effect is bound to screen space (it remains constant relative to screen size, regardless of the distance to the camera).
- 1.0f - radius of the effect is bound to world space (it remains the same relative to objects, i.e. gets smaller as the camera moves away from them).
Arguments
- float perspective - Perspective value to be set in the range [0.0f, 1.0f]. The default value is 0.02f
float getSSDirtPerspective( )
Returns the current perspective value, that determines the degree of impact of distance from the camera on the radius of the Screen-Space Dirt effect:- 0.0f - radius of the effect is bound to screen space (it remains constant relative to screen size, regardless of the distance to the camera).
- 1.0f - radius of the effect is bound to world space (it remains the same relative to objects, i.e. gets smaller as the camera moves away from them).
Return value
Current perspective value in the range [0.0f, 1.0f]. The default value is 0.02fvoid setSSDirtQuality( int quality )
Sets the quality for the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- int quality - SSDirt effect quality to be set:
- 0 - low
- 1 - medium
- 2 - high (by default)
- 3 - ultra
int getSSDirtQuality( )
Returns the current quality of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current SSDirt effect quality:- 0 - low
- 1 - medium
- 2 - high (by default)
- 3 - ultra
void setSSDirtRadius( float radius )
Sets the size of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float radius - Size of the SSDirt effect to be set. The default value is 1.0f.
float getSSDirtRadius( )
Returns the current size of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).void setSSDirtResolution( int resolution )
Sets the resolution of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- int resolution - Resolution of the SSDirt effect to be set:
- 0 - quarter
- 1 - half (by default)
- 2 - full
int getSSDirtResolution( )
Returns the current resolution of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current resolution of the SSDirt effect:- 0 - quarter
- 1 - half (by default)
- 2 - full
void setSSDirtThreshold( float threshold )
Sets the threshold of the SSDirt effect. It determines depth limit for the SSDirt effect in areas where information cannot be obtained. The SSDirt effect must be enabled (see the setSSDirt() method).Arguments
- float threshold - SSDirt threshold value to be set in the range [0.0f; 1.0f]. Higher values make the effect less pronounced. The default value is 1.0f.
float getSSDirtThreshold( )
Returns the current threshold value of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).Return value
Current SSDirt threshold value in the range [0.0f; 1.0f]. Higher values make the effect less pronounced. The default value is 1.0f.void setLatency( int latency )
Set the maximum number of back buffer frames that a driver is allowed to queue for rendering. The buffers are used for GPU load optimization: in certain cases several command buffers (frames) can be processed by GPU at once increasing the Waiting GPU time for one frame and having zero Waiting GPU time for the next ones. Thus, GPU avoids rendering spikes, but increased Waiting GPU time will cause a spike in application logic, in case when the logic is bound to duration of a single frame. Frame latency is the number of frames that are allowed to be stored in a queue before submission for rendering. Latency is often used to control how the CPU chooses between responding to user input and frames that are in the render queue. In certain cases (high GPU load, VSYNC usage) it may be required to queue more frames of data, it is also beneficial for applications with no user input (e.g., video playback).Arguments
- int latency - Maximum number of back buffer frames allowed:
- 0 - sequential rendering CPU-GPU-CPU-GPU...
- 1 - 1 buffer (by default)
- 2 - 2 buffers
- 3 - 3 buffers
Values 1-3 are available for DirectX only.
int getLatency( )
Returns the maximum number of back buffer frames that a driver is allowed to queue for rendering. The buffers are used for GPU load optimization: in certain cases several command buffers (frames) can be processed by GPU at once increasing the Waiting GPU time for one frame and having zero Waiting GPU time for the next ones. Thus, GPU avoids rendering spikes, but increased Waiting GPU time will cause a spike in application logic, in case when the logic is bound to duration of a single frame. Frame latency is the number of frames that are allowed to be stored in a queue before submission for rendering. Latency is often used to control how the CPU chooses between responding to user input and frames that are in the render queue. In certain cases (high GPU load, VSYNC usage) it may be required to queue more frames of data, it is also beneficial for applications with no user input (e.g., video playback).Return value
Maximum number of back buffer frames currently allowed:- 0 - sequential rendering CPU-GPU-CPU-GPU...
- 1 - 1 buffer (by default)
- 2 - 2 buffers
- 3 - 3 buffers
void setStreamingMode( int mode )
Sets the streaming mode to be used for textures and meshes. Forced mode can be used for grabbing frame sequences, rendering node previews, etc.Arguments
- int mode - Streaming mode to be set: one of the STREAMING_* variables.
int getStreamingMode( )
Returns the current streaming mode used for textures and meshes.Return value
Current streaming mode: one of the STREAMING_* variables.void setStreamingUseMemoryLimit( int limit )
Sets a value indicating if memory limitation for asynchronous resource loading (meshes and textures) is enabled.Arguments
- int limit - 1 to enable memory limitation for asynchronous resource loading (meshes and textures), 0 to disable it. The default value is 1.
int isStreamingUseMemoryLimit( )
Returns a value indicating if memory limitation for asynchronous resource loading (meshes and textures) is currently enabled.Return value
1 if memory limitation for asynchronous resource loading (meshes and textures) is currently enabled; otherwise, 0.void setStreamingMaxThreads( int threads )
Set the maximum number of threads used for streaming.Arguments
- int threads - Maximum number of threads to be used for streaming, within the [1; 256] range. The default value is 1.
Higher number of threads results in faster streaming, but may cause spikes in case of excessive consumption of GPU resources.
int getStreamingMaxThreads( )
Returns the maximum number of threads used for streaming.Return value
Current maximum number of threads used for streaming, within the [1; 256] range. The default value is 1.void setStreamingCheckDuration( int duration )
Sets resource check interval.Arguments
- int duration - Resource check interval, in number of frames, within the [0; 300] range. The default value is 300.
int getStreamingCheckDuration( )
Returns the current resource check interval.Return value
Current resource check interval, in number of frames, within the [0; 300] range.void setStreamingDestroyDuration( int duration )
Sets resource cleanup interval.Arguments
- int duration - Resource cleanup interval, in number of frames, within the [0; 300] range. The default value is 30.
int getStreamingDestroyDuration( )
Returns the current resource cleanup interval.Return value
Resource cleanup interval, in number of frames, within the [0; 300] range.void setStreamingTexturesMemoryLimit( int limit )
Sets cache memory limit used for texture streaming.Arguments
- int limit - Cache memory limit for textures to be set, in percentage of the total GPU memory. The default value is 65.
int getStreamingTexturesMemoryLimit( )
Returns the current cache memory limit used for texture streaming.Return value
Current cache memory limit for textures, in percentage of the total GPU memory.void setStreamingTexturesCachePreload( int preload )
Sets a value indicating if textures cache should be loaded at engine startup.Arguments
- int preload - 1 to enable loading of textures cache at engine startup, 0 to disable it. The default value is 1.
int isStreamingTexturesCachePreload( )
Returns a value indicating if textures cache is loaded at engine startup.Return value
1 if textures cache is loaded at engine startup; otherwise, 0.void setStreamingTexturesCacheResolution( int resolution )
Sets resolution for texture cache elements. These minimized copies of textures are used instead of the originals.Arguments
- int resolution - Resolution for texture cache elements. One of the following values:
- 0 - is 8x8
- 1 - is 16x16 (by default)
- 2 - is 32x32
- 3 - is 64x64
- 4 - is 128x128
- 5 - is 256x256
- 6 - is 512x512
int getStreamingTexturesCacheResolution( )
Returns current resolution for texture cache elements. These minimized copies of textures are used instead of the originals.Return value
Current resolution for texture cache elements. One of the following values:- 0 - is 8x8
- 1 - is 16x16 (by default)
- 2 - is 32x32
- 3 - is 64x64
- 4 - is 128x128
- 5 - is 256x256
- 6 - is 512x512
void setStreamingMeshesMemoryLimit( int limit )
Sets cache memory limit used for mesh streaming.Arguments
- int limit - Cache memory limit for meshes to be set, in percentage of the total GPU memory. The default value is 15.
int getStreamingMeshesMemoryLimit( )
Returns the current cache memory limit used for mesh streaming.Return value
Current cache memory limit for meshes, in percentage of the total GPU memory.void setShadersPreload( int preload )
Sets a value indicating if all shaders are compiled and loaded to RAM every time the world is loaded.Arguments
- int preload - 1 to enable pre-loading for shaders, 0 to disable it. The default value is 0.
int isShadersPreload( )
Returns a value indicating if all shaders are compiled and loaded to RAM every time the world is loaded.Return value
1 if pre-loading for shaders is enabled; otherwise, 0.void setFPSStabilization( int stabilization )
Sets the value indicating if the framerate stabilization is enabled.Arguments
- int stabilization - 1 to enable framerate stabilization, 0 to disable it.
int isFPSStabilization( )
Returns a value indicating if framerate stabilization is enabled.Return value
1 if framerate stabilization is enabled; otherwise, 0.void setFPSStabilizationSpeedUP( float fpsstabilizationspeedup )
Set the number of frames per second for gradual FPS increase. This value controls smooth transition between various framerates and avoid fluctuations.Arguments
- float fpsstabilizationspeedup - Transition rate to be set within the [0; inf] range. The default value is 16.
float getFPSStabilizationSpeedUP( )
Returns the current number of frames per second for gradual FPS increase. This value controls smooth transition between various framerates and avoid fluctuations.Return value
Current transition rate within the [0; inf] range.void setFPSStabilizationSpeedDown( float down )
Set the number of frames per second for gradual FPS decrease. This value controls smooth transition between various framerates and avoid fluctuations.Arguments
- float down - Transition rate to be set within the [0; inf] range. The default value is 16.
float getFPSStabilizationSpeedDown( )
Returns the current number of frames per second for gradual FPS decrease. This value controls smooth transition between various framerates and avoid fluctuations.Return value
Current transition rate within the [0; inf] range.void setFPSStabilizationMin( int min )
Sets the minimum FPS value for which framerate stabilization is to be performed. For lower FPS values framerate stabilization will be disabled.Arguments
- int min - Minimum FPS value to be set within the [0; 500] range. The default value is 30.
int getFPSStabilizationMin( )
Returns the current minimum FPS value for which framerate stabilization is to be performed. For lower FPS values framerate stabilization will be disabled.Return value
Minimum FPS value within the [0; 500] range. The default value is 30.void setFPSStabilizationRounding( int rounding )
Sets the unit size (granularity) used for framerate stabilization. Resulting FPS value will be rounded to the nearest multiple of unit size.Arguments
- int rounding - Unit size (granularity) to be set, in frames per second, within the [0; 100] range. The default value is 10.
int getFPSStabilizationRounding( )
Returns the current unit size (granularity) used for framerate stabilization. Resulting FPS value will be rounded to the nearest multiple of unit size.Return value
Current unit size (granularity), in frames per second, within the [0; 100] range.void setFPSStabilizationOffset( int offset )
Returns the current amount of actual FPS reduction used for framerate stabilization. Actual FPS value will be reduced by this amount: Resulting_FPS = Actual_FPS - Offset.Arguments
- int offset - FPS reduction amount to be set, in frames per second, within the [0; 100] range. The default value is 4.
int getFPSStabilizationOffset( )
Returns the current amount of actual FPS reduction used for framerate stabilization. Actual FPS value will be reduced by this amount: Resulting_FPS = Actual_FPS - Offset.Return value
Current FPS reduction amount, in frames per second, within the [0; 100] range.void destroyCacheTexture( const UGUID & guid )
Deletes cache (images and metadata) stored on disk for the texture with the specified GUID. Corresponding files in the data/.cache_textures will be removed.Arguments
- const UGUID & guid - Texture file GUID.
void createCacheTexture( const UGUID & guid )
Generates cache for the texture with the specified GUID.Arguments
- const UGUID & guid - Texture file GUID.
void destroyCacheTextures( )
Clears texture cache (images and metadata) stored on disk. All files in the data/.cache_textures will be removed.void unloadCacheTextures( )
Unloads texture cache from the memory. This method does not delete files in the data/.cache_textures.void createCacheTextures( )
Generates texture cache for all textures used in the project.void loadCacheTextures( )
Loads texture cache from the disk. Texture cache always remains in memory after loading.void setTranslucentColor( const Math::vec4 & color )
Sets the color to be used for translucent objects globally. When light shines on one side of the object, the other side is partially illuminated with this color.Arguments
- const Math::vec4 & color - Color to be used for translucent objects globally. By default, the color is white.
Math::vec4 getTranslucentColor( )
Returns the current color used for translucent objects globally. When light shines on one side of the object, the other side is partially illuminated with this color.Return value
Color used for translucent objects globally. By default, the color is white.void setShadowDistanceScale( float scale )
Sets the global shadow distance scale multiplier. This option allows a developer to easily increase or decrease shadows rendering performance by changing the scale.Arguments
- float scale - Global shadow distance scale multiplier to be set in [0.0f; inf] range. The default value is 1.0f.