This page has been translated automatically.
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
Extending Editor Functionality
FAQ
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

engine.render Functions

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


void engine.render.beginDebugGroup ( string name ) #

Starts a GPU debug group with a specified name in Microprofiler.

Arguments

  • string name - Name of debug group.

void engine.render.endDebugGroup ( ) #

Ends a GPU debug group previously started via the beginDebugGroup() method.

int engine.render.getMaxTextureBufferSize ( ) #

Returns the maximum size of the texture buffer.

Return value

Maximum size of the texture buffer.

void engine.render.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 engine.render.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 engine.render.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 engine.render.getAnimationLeaf ( ) #

Returns the current scale for rotation angle of vegetation leaves.

Return value

Global leaf rotation angle.

float engine.render.getAnimationOldTime ( ) #

Returns the previous render animation time for vegetation.

Return value

Animation time in milliseconds.

void engine.render.setAnimationScale ( float scale ) #

Sets the global scale for rotation speed of vegetation leaves.

Arguments

  • float scale - Global leaf rotation speed.

float engine.render.getAnimationScale ( ) #

Returns the current global scale for rotation speed of vegetation leaves.

Return value

Global leaf rotation speed.

void engine.render.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 engine.render.getAnimationStem ( ) #

Returns the current global scale for movement amplitude of vegetation stems.

Return value

Global stem amplitude scale.

void engine.render.setAnimationTime ( float time ) #

Sets the render animation time for vegetation.

Arguments

  • float time - Animation time in milliseconds.

float engine.render.getAnimationTime ( ) #

Returns the render animation time for vegetation.

Return value

Animation time in milliseconds.

void engine.render.setAnimationWind ( 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

  • vec3 wind - Offset for vegetation under wind by X, Y and Z axes.

vec3 engine.render.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 engine.render.setBorder ( 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

  • vec2 border - Vector with components representing border sizes: X - width, Y - height.

vec2 engine.render.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 engine.render.getAPI ( ) #

Returns the current Graphics API, or API_UNKNOWN if API cannot be identified.

Return value

The Graphics API flag (see API_* variables).

void engine.render.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 engine.render.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 engine.render.setBackgroundColor ( vec4 color ) #

Sets the background color by using given vector.

Arguments

  • vec4 color - A background color vector.

vec4 engine.render.getBackgroundColor ( ) #

Returns the background color vector.

Return value

A background color vector.

void engine.render.setBentNormalRayTracing ( int tracing ) #

Enables or disables ray-traced bent normals calculation. The use of SSRTGI for bent normals allows for smooth ambient lighting.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Arguments

  • int tracing - 1 to enable ray-traced bent normals calculation, 0 to disable. The default value is 1.

int engine.render.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.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Return value

1 if ray-traced bent normals calculation is enabled; otherwise, 0.

void engine.render.setBentNormalFixOverlitAreas ( int areas ) #

Enables or disables correction of overlit areas for bent normals calculation.
Notice
  • This option may significantly affect performance, so disable it when it's not necessary.
  • Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Arguments

  • int areas - 1 to enable correction of overlit areas for bent normals calculation, 0 to disable it. The default value is 0.

int engine.render.isBentNormalFixOverlitAreas ( ) #

Returns a value indicating if correction of overlit areas for bent normals calculation is enabled.
Notice
  • This option may significantly affect performance, so disable it when it's not necessary.
  • Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Return value

1 if correction of overlit areas for bent normals calculation is enabled; otherwise, 0.

void engine.render.setBentNormalRayTracingDenoise ( int denoise ) #

Enables or disables noise reduction for ray-traced bent normals calculation. This option reduces noise by using the blur effect.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Arguments

  • int denoise - 1 to enable noise reduction for ray-traced bent normals calculation, 0 to disable. The default value is 1.

int engine.render.isBentNormalRayTracingDenoise ( ) #

Returns a value indicating if noise reduction for ray-traced bent normals calculation is enabled. This option reduces noise by using blur effect.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Return value

1 if noise reduction for ray-traced bent normals calculation is enabled; otherwise, 0.

void engine.render.setBentNormalRayTracingThreshold ( float threshold ) #

Sets the threshold value for the ray-traced bent normals calculation.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Arguments

  • float threshold - Bent normals ray tracing threshold value. The default value is 1.0f.

float engine.render.getBentNormalRayTracingThreshold ( ) #

Returns the current threshold value for the ray-traced bent normals calculation.
Notice
Ray-traced bent normals calculation available only when the SSRTGI technique is enabled.

Return value

Bent normal ray tracing threshold value. The default value is 1.0f.

Texture engine.render.getBlack2DArrayTexture ( ) #

Returns black 2D array texture.

Return value

Black 2D array texture.

Texture engine.render.getBlack2DTexture ( ) #

Returns black 2D texture.

Return value

Black 2D texture.

Texture engine.render.getBlack3DTexture ( ) #

Returns black 3D texture.

Return value

Black 3D texture.

Texture engine.render.getBlackCubeTexture ( ) #

Returns black Cube texture.

Return value

Black Cube texture.

void engine.render.setBloom ( int bloom ) #

Enables or disables the bloom effect.

Arguments

  • int bloom - 1 value to enable the bloom effect, 0 to disable.

int engine.render.isBloom ( ) #

Returns a value indicating if the bloom effect is enabled.

Return value

1 if the bloom effect is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getBloomScale ( ) #

Returns the scale of the bloom effect.

Return value

Bloom scale value within the [0.0f; 1.0f] range.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setClearBufferMask ( int mask ) #

Arguments

int engine.render.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 RENDER_STATE_BUFFER_* variables.

void engine.render.setCloudDistortionTexture ( int texture ) #

Sets a value indicating which texture type is to be used for clouds distortion.
Notice
To set the value via the console, use render_clouds_distortion_textureconsole command.

Arguments

  • int texture - One of the following values:
    • 0 - 2D Texture - more performance-friendly, but may cause an excessive vertical extrusion of clouds.
    • 1 - 3D Texture — ensures homogeneous detail distortion and better image quality, but at a higher performance cost.

int engine.render.getCloudDistortionTexture ( ) #

Returns a value indicating which texture type is currently used for clouds distortion.
Notice
To get the value via the console, use render_clouds_distortion_textureconsole variable.

Return value

One of the following values:
  • 0 - 2D Texture - more performance-friendly, but may cause an excessive vertical extrusion of clouds.
  • 1 - 3D Texture — ensures homogeneous detail distortion and better image quality, but at a higher performance cost.

void engine.render.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 engine.render.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 engine.render.setCloudsDynamicCoverageArea ( float area ) #

Sets dynamic coverage area for clouds. This parameter determines visibility distance for coverage of FieldWeather objects.
Notice
Increasing dynamic coverage area leads to reduction of quality of FieldWeather coverage texture and loss of details. This effect can be mitigated by increasing dynamic coverage resolution using setCloudsDynamicCoverageResolution() method.

Arguments

  • float area - Dynamic coverage area, in units. The default value is 10 000.

float engine.render.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 engine.render.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.
Notice
Increased resolution significantly affects performance.

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 engine.render.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 engine.render.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 engine.render.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 engine.render.setCloudsInterleavedRendering ( int rendering ) #

Enables or disables interleaved rendering mode for clouds.
Notice
In cases when clouds are viewed from the ground, or from above (at significant distance) and viewer's velocities are less than 200 units per second, this parameter can be used to provide a significant gain in performance.

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 engine.render.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 engine.render.setCloudsLightingConeRadius ( float radius ) #

Sets lighting cone sampling radius for clouds lighting.
Notice
Low values may result in unnatural behavior as the position of the sun changes.

Arguments

  • float radius - Lighting cone radius in range [0.0f; 1.0f]. The default value is 0.3.

float engine.render.getCloudsLightingConeRadius ( ) #

Returns the current lighting cone sampling radius for clouds lighting.

Return value

Lighting cone radius in range [0.0f; 1.0f].

void engine.render.setCloudsLightingQuality ( int quality ) #

Sets lighting quality for clouds. This parameter determines the number of samples used to calculate lighting for clouds.
Notice
This parameter has a significant impact on performance. Therefore, it is recommended to use low settings, when possible.

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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
Notice
Visual difference between low and ultra quality is not significant. Therefore, it is recommended to use low settings, when possible, to gain performance.

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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getCloudsSoftIntersection ( ) #

Returns the current soft intersection distance for clouds.

Return value

Soft intersection distance for clouds, in meters.

void engine.render.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 engine.render.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 engine.render.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 engine.render.getClutterDistance ( ) #

Returns a distance, at which (and farther) objects with "clutter" flag on will not be rendered.

Return value

Distance, in units.

void engine.render.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 engine.render.getColorBrightness ( ) #

Returns the current overall brightness of the scene.

Return value

Current brightness.

void engine.render.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 engine.render.getColorContrast ( ) #

Returns the current overall contrast of the scene.

Return value

Current contrast.

void engine.render.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 engine.render.getColorGamma ( ) #

Returns the current overall gamma of the scene.

Return value

Current gamma.

void engine.render.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 engine.render.getColorSaturation ( ) #

Returns the current overall saturation of the scene.

Return value

Current saturation.

int engine.render.setColorTextureImage ( 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().
Source code (UnigineScript)
Image lut;
Image lut_0;
Image lut_1;

if(lut == NULL) {
	lut = new Image();
	lut_0 = new Image("unigine_project/textures/lookup_first.dds");
	lut_1 = new Image("unigine_project/textures/lookup_second.dds");
}

float k = sin(engine.game.getTime() * 2.0f) * 0.5f + 0.5f;

lut.copy(lut_0);
lut.blend(lut_1,0,0,0,0,lut.getWidth(),lut.getHeight(),k);

engine.render.setColorTextureImage(lut);

Arguments

  • Image image - Color transformation image.

Return value

1 if the image is set successfully; otherwise, 0.

int engine.render.getColorTextureImage ( Image image ) #

Return the current color transformation image (LUT).

Arguments

  • Image image - Image to store the color transformation texture in.

Return value

1 if an image is successfully received; otherwise, 0.

void engine.render.setColorTextureName ( string name ) #

Sets the name of a new color transformation texture (LUT).

Arguments

  • string name - Name of the file with the texture. If NULL (0) is passed, the texture is cleared.

string engine.render.getColorTextureName ( ) #

Returns the name of the current color transformation texture (LUT).

Return value

Name of the current color transformation texture.

void engine.render.setColorWhite ( vec4 white ) #

Sets the current white balance of the scene.

Arguments

  • vec4 white - White balance. The provided value is saturated in the range [vec4_epsilon;vec4_one].

vec4 engine.render.getColorWhite ( ) #

Returns the current white balance of the scene.

Return value

Current white balance.

void engine.render.setCompositeMaterial ( string 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

  • string material - Composite material name.

string engine.render.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 engine.render.setCross ( int cross ) #

Enables or disables cross flares.

Arguments

  • int cross - 1 to enable cross flares, 0 to disable.

int engine.render.isCross ( ) #

Returns a value indicating if cross flares are enabled.

Return value

1 if cross flares are enabled; otherwise, 0.

void engine.render.setCrossAngle ( float angle ) #

Sets the cross flares orientation angle.

Arguments

  • float angle - Angle in degrees.

float engine.render.getCrossAngle ( ) #

Returns the cross flares orientation angle.

Return value

Angle between flare shafts in degrees.

void engine.render.setCrossColor ( vec4 color ) #

Sets the color of the cross flares.

Arguments

  • vec4 color - Color of cross flares.

vec4 engine.render.getCrossColor ( ) #

Returns the color of the cross flares.

Return value

Color of the cross flares.

void engine.render.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 engine.render.getCrossLength ( ) #

Returns the length of a cross flare.

Return value

Length of a cross flare relative to the screen width.

void engine.render.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 engine.render.getCrossScale ( ) #

Returns the current multiplier for color of cross flares.

Return value

Cross color scale.

void engine.render.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 engine.render.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 engine.render.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 engine.render.getCrossThreshold ( ) #

Returns the current brightness threshold for areas to produce flare.

Return value

Cross flares threshold.

void engine.render.setData ( string 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:
Source code (XML)
<world version="1.21">
	<render>
		<data>User data</data>
	</render>
</world>

Arguments

  • string data - New user data. The data can contain an XML formatted string.

string engine.render.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:
Source code (XML)
<world version="1.21">
	<render>
		<data>User data</data>
	</render>
</world>

Return value

User data. The data can contain an XML formatted string.

void engine.render.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 engine.render.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 engine.render.setDebugMaterials ( string materials ) #

Updates the list of debug materials to be rendered.
Notice
Rendering of debug materials must be enabled (see the setDebug() method).

Arguments

  • string materials - List of debug materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").

string engine.render.getDebugMaterials ( ) #

Returns the list of debug materials to be rendered as a string constant.
Notice
Rendering of debug materials must be enabled (see the setDebug() method).

Return value

List of debug materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").

void engine.render.setDecalDistance ( float distance ) #

Sets the distance, at which (and farther) decals will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getDecalDistance ( ) #

Returns the distance, at which (and farther) decals will not be rendered.

Return value

Distance in units.

void engine.render.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 engine.render.isDecals ( ) #

Returns the value indicating if rendering of decals is enabled.

Return value

1 if rendering of decals is enabled; otherwise, 0.

void engine.render.setDeferredMaterial ( string 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

  • string material - List of composite deferred materials (a comma separated string, e.g., "mat_1, mat_2, ... mat_n").

string engine.render.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 engine.render.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 engine.render.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 engine.render.setDirtTextureName ( string 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

  • string name - Name of the lens flares modulation texture.

string engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getDOFBlur ( ) #

Returns the intensity of blur for the DOF (Depth Of Field) effect.

Return value

DoF blur intensity value.

void engine.render.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.
Notice
For the DOF effect, the Bokeh effect is enabled by default.

Arguments

  • int mode - The Bokeh shape:
    • 0 - ring (by default).
    • 1 - circle.

int engine.render.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.
Notice
For the DOF effect, the Bokeh effect is enabled by default.

Return value

The Bokeh shape:
  • 0 - ring (by default).
  • 1 - circle.

void engine.render.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 engine.render.getDOFChromaticAberration ( ) #

Returns the intensity of chromatic aberration for the DOF (Depth Of Field) effect.

Return value

DOF chromatic aberration intensity value.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setEnabled ( int arg1 ) #

Enables or disables the render.

Arguments

  • int arg1 - 1 to enable the render, 0 to disable it.

int engine.render.isEnabled ( ) #

Returns a value indicating if the render is enabled.

Return value

1 if the render is enabled; otherwise, 0.

void engine.render.setEnvironment ( int environment ) #

Enables or disables rendering of environment of the scene.
Notice
To enable/disable environment rendering, use also render_environmentconsole command.

Arguments

  • int environment - 1 to enable rendering of environment, 0 to disable it. The default value is 1.

int engine.render.isEnvironment ( ) #

Returns the value indicating if rendering of environment of the scene is enabled.
Notice
To check if environment rendering is enabled, use also render_environmentconsole variable.

Return value

1 rendering of environment is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.setEnvironmentHazeMode ( int mode ) #

Sets the mode for the haze effect.
Notice
To set the haze mode via console, use the render_environment_hazeconsole command.

Arguments

int engine.render.getEnvironmentHazeMode ( ) #

Returns the current mode set for the haze effect.
Notice
To check the haze mode via console, use the render_environment_hazeconsole variable.

Return value

Haze mode: one of the RENDER_HAZE_* variables.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
Notice
If the specified value is less than the current minimum luminance, the minimum luminance value will be changed to the specified maximum luminance so that they are equal.

Arguments

  • float luminance - Maximum luminance. The provided value is saturated in the range [-10.0f; 10.0f].

float engine.render.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 engine.render.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.
Notice
If the specified value is greater than the current maximum luminance, the maximum luminance value will be changed to the specified minimum luminance so that they are equal.

Arguments

  • float luminance - Minimum luminance. The provided value is clamped to the range [-10.0f; 10.0f].

float engine.render.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 engine.render.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 engine.render.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 engine.render.setFadeColor ( 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 inscene 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

  • 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].

vec4 engine.render.getFadeColor ( ) #

Returns the current fade color of the scene.

Return value

Current fade color.

void engine.render.setFieldDistance ( float distance ) #

Sets the distance, at which (and farther) Field nodes will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getFieldDistance ( ) #

Returns the distance, at which (and farther) Field nodes will not be rendered.

Return value

Distance in units.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getFilmicShoulderScale ( ) #

Returns the current Shoulder Strength filmic tonemapping parameter value that is used to change bright values.

Return value

Shoulder Strength value.

void engine.render.setFilmicToeDenominator ( float denominator ) #

Sets the Toe Denominator filmic tonemapping parameter value.

Arguments

  • float denominator - Toe Denominator value.

float engine.render.getFilmicToeDenominator ( ) #

Returns the current Toe Denominator filmic tonemapping parameter value.

Return value

Toe Denominator value.

void engine.render.setFilmicToeNumerator ( float numerator ) #

Sets the Toe Numerator filmic tonemapping parameter value.

Arguments

  • float numerator - Toe Numerator value.

float engine.render.getFilmicToeNumerator ( ) #

Sets the Toe Numerator filmic tonemapping parameter value.

Return value

Toe Numerator value.

void engine.render.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 engine.render.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 engine.render.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 engine.render.getFilmicWhiteLevel ( ) #

Returns the current Linear White Point filmic tonemapping parameter value.

Return value

Linear White Point value.

void engine.render.setFilmicSaturationRecovery ( float recovery ) #

Sets the color saturation recovery value for the filmic tonemapper.

Arguments

  • float recovery - Color saturation recovery value to be set, in the [0.0f, 1.0f] range. The default value is 0.75f.
    • 0.0f - standard filmic tonemapping, no saturation recovery is performed.
    • 1.0f - color saturation is recovered to the full extent.
    Notice
    When the 1.0f value is set specular highlights appear too saturated, so the recommended value is 0.75f

float engine.render.getFilmicSaturationRecovery ( ) #

Returns the current color saturation recovery value value for the filmic tonemapper.

Return value

Current color saturation recovery value in the [0.0f, 1.0f] range. The default value is 0.75f.
  • 0.0f - standard filmic tonemapping, no saturation recovery is performed.
  • 1.0f - color saturation is recovered to the full extent.
Notice
When the 1.0f value is set specular highlights appear too saturated, so the recommended value is 0.75f

void engine.render.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 engine.render.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 engine.render.isFlipped ( ) #

Return value

1 if the render is flipped; otherwise, 0.

void engine.render.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 engine.render.getFXAAIntensity ( ) #

Returns the intensity value of the FXAA. Intensity specifies the sample offset of FXAA fragment.

Return value

Intensity value of the FXAA

void engine.render.setGbufferLightmap ( int lightmap ) #

Enables or disables storing lightmap data in the GBuffer.
Notice
The feature can be enabled/disabled by using the render_gbuffer_lightmapconsole command.

Arguments

  • int lightmap - 1 to enable storing lightmap data in the GBuffer, 0 to disable it. The default value is 1.

int engine.render.isGbufferLightmap ( ) #

Returns a value indicating if lightmap data is stored in the GBuffer.
Notice
To check if the feature is enabled, use the render_gbuffer_lightmapconsole variable.

Return value

1 if lightmap data is stored in the GBuffer; otherwise, 0.

int engine.render.getGPUMemory ( ) #

Returns an amount of memory provided by the current GPU.

Return value

Amount of memory in Mbytes.

int engine.render.getGPUName ( ) #

Returns the name of the current GPU.

Return value

GPU name flag.

Texture engine.render.getGray2DArrayTexture ( ) #

Returns gray 2D array texture.

Return value

Gray 2D array texture.

Texture engine.render.getGray2DTexture ( ) #

Returns gray 2D texture.

Return value

Gray 2D texture.

Texture engine.render.getGray3DTexture ( ) #

Returns gray 3D texture.

Return value

Gray 3D texture.

Texture engine.render.getGrayCubeTexture ( ) #

Returns gray Cube texture.

Return value

Gray Cube texture.

void engine.render.setLens ( int lens ) #

Enables or disables lens flares.

Arguments

  • int lens - Positive integer to enable lens flares, 0 to disable.

int engine.render.isLens ( ) #

Returns a value indicating if lens flares are enabled.

Return value

Positive integer if lens flares are enabled; otherwise, 0.

void engine.render.setLensColor ( vec4 color ) #

Sets the color of a lens flares.

Arguments

  • vec4 color - Color of lens flares.

vec4 engine.render.getLensColor ( ) #

Returns the color of a lens flare.

Return value

Color of a lens flare.

void engine.render.setLensDispersion ( 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

  • vec3 dispersion - Lens dispersion displacement per channel. If a negative value is set for a channel, 0 will be used instead.

vec3 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getLensRadius ( ) #

Returns the current radius of the spherical lens flares on the screen.

Return value

Radius of the spherical lens flares.

void engine.render.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 engine.render.getLensScale ( ) #

Returns the current multiplier for color of HDR lens flares.

Return value

Lens color scale.

void engine.render.setLensThreshold ( float threshold ) #

Sets the brightness threshold for lens flares.

Arguments

  • float threshold - Lens flares threshold.

float engine.render.getLensThreshold ( ) #

Returns the current brightness threshold for lens flares.

Return value

Lens flares threshold.

void engine.render.setLightDistance ( float distance ) #

Sets the distance, at which (and farther) dynamic lights will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getLightDistance ( ) #

Returns the distance, at which (and farther) dynamic lights will not be rendered.

Return value

Distance in units.

void engine.render.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.
Notice
To set the value via the Console, use the render_lights_forward_per_object_envconsole command.

Arguments

  • int env - Maximum number of environment probes per object within the [0; 128] range. The default value is 4.

int engine.render.getLightsForwardPerObjectEnv ( ) #

Returns the current maximum number of environment probes per object (available only for materials rendered in the forward rendering pass).
Notice
To get the value via the Console, use the render_lights_forward_per_object_envconsole variable.

Return value

Maximum number of environment probes per object within the [0; 128] range.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_forward_per_object_omniconsole command.

Arguments

  • int omni - Maximum number of omni lights per object within the [0; 128] range. The default value is 4.

int engine.render.getLightsForwardPerObjectOmni ( ) #

Returns the current maximum number of omni lights per object (available only for materials rendered in the forward rendering pass).
Notice
To get the value via the console, use the render_lights_forward_per_object_omniconsole variable.

Return value

Maximum number of omni lights per object within the [0; 128] range.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_forward_per_object_projconsole command.

Arguments

  • int proj - Maximum number of projected lights per object within the [0; 128] range. The default value is 4.

int engine.render.getLightsForwardPerObjectProj ( ) #

Returns the current maximum number of projected lights per object (available only for materials rendered in the forward rendering pass).
Notice
To get the value via the console, use the render_lights_forward_per_object_projconsole variable.

Return value

Maximum number of projected lights per object within the [0; 128] range.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_forward_per_object_voxelconsole command.

Arguments

  • int voxel - Maximum number of voxel probes per object within the [0; 128] range.

int engine.render.getLightsForwardPerObjectVoxel ( ) #

Returns the current maximum number of voxel probes per object (available only for materials rendered in the forward rendering pass).
Notice
To get the value via the console, use the render_lights_forward_per_object_voxelconsole variable.

Return value

Maximum number of voxel probes per object within the [0; 128] range.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_forward_per_object_worldconsole command.

Arguments

  • int world - Maximum number of world lights per object within the [0; 128] range. The default value is 4.

int engine.render.getLightsForwardPerObjectWorld ( ) #

Returns the current maximum number of world lights per object (available only for materials rendered in the forward rendering pass).
Notice
To get the value via the console, use the render_lights_forward_per_object_worldconsole variable.

Return value

Maximum number of world lights per object within the [0; 128] range.

void engine.render.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).
Notice
To enable/disable this feature via the Console, use the render_lights_interleavedconsole command.

Arguments

  • int interleaved - 1 to enable interleaved lights rendering mode, 0 to disable it.

int engine.render.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 engine.render.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 engine.render.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 engine.render.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.

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 engine.render.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 engine.render.setLightsLensFlares ( int flares ) #

Enables or disables rendering of per-light lens flares.
Notice
To set the value via the console, use the render_lights_lens_flaresconsole command.

Arguments

  • int flares - 1 to enable rendering of per-light lens flares, 0 to disable it. The default value is 1.

int engine.render.isLightsLensFlares ( ) #

Returns the value indicating if rendering of per-light lens flares is enabled.
Notice
To get the value via the console, use the render_lights_lens_flaresconsole variable.

Return value

1 if rendering of per-light lens flares is enabled; otherwise, 0.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_max_per_batchconsole command.

Arguments

  • int batch - Maximum number of lights per batch within the [0; 1024] range. The default value is 1024.
    Notice
    0 disables batching optimization.

int engine.render.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.
Notice
To get the value via the console, use the render_lights_max_per_batchconsole variable.

Return value

Maximum number of lights per batch within the [0; 1024] range.
Notice
0 means batching optimization is disabled.

void engine.render.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.
Notice
To set the value via the console, use the render_lights_tile_grid_sizeconsole command.

Arguments

  • int size - Number of grid tiles per axis within the [1; 32] range. The default value is 8.

int engine.render.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.
Notice
To get the value via the console, use the render_lights_tile_grid_sizeconsole variable.

Return value

Number of grid tiles per axis within the [1; 32] range.

int engine.render.getMaxFieldAnimations ( ) #

Returns the maximum limit of FieldAnimation nodes allowed to be used in shaders.

Return value

Maximum number of FieldAnimation nodes allowed.
Notice
Higher values will affect shader compilation time and performance

int engine.render.getMaxFieldHeights ( ) #

Returns the maximum limit of FieldHeight nodes allowed to be used in shaders.

Return value

Maximum number of FieldHeight nodes allowed.
Notice
Higher values will affect shader compilation time and performance

int engine.render.getMaxFieldShorelines ( ) #

Returns the maximum limit of FieldShoreline nodes allowed to be used in shaders.

Return value

Maximum number of FieldShoreline nodes allowed.
Notice
Higher values will affect shader compilation time and performance

int engine.render.getMaxFieldSpacers ( ) #

Returns the maximum limit of FieldSpacer nodes allowed to be used in shaders.

Return value

Maximum number of FieldSpacer nodes allowed.
Notice
Higher values will affect shader compilation time and performance

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getMotionBlurNoiseIntensity ( ) #

Returns the current intensity of the noise used in the motion blur.

Return value

Noise intensity.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getNumInstances ( ) #

Returns the maximum number of instances that can be rendered for each of the following node types:
Notice
Returned value depends on the graphics API used.

Return value

Maximum number of instances that can be rendered.

int engine.render.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 engine.render.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 engine.render.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 engine.render.getNumProcedurals ( ) #

Returns the number of procedurals that can be currently seen in the viewport.

Return value

The number of procedurals.

int engine.render.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.

long engine.render.getNumShaders ( ) #

Returns the number of shaders set per frame. See Rendering Profiler article for details.

Return value

The number of shaders.

int engine.render.getNumShadows ( ) #

Returns the number of shadow passes rendered per frame. See Rendering Profiler article for details.

Return value

The number of shadow passes.

int engine.render.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 engine.render.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 engine.render.setObjectDistance ( float distance ) #

Sets the distance, at which (and farther) objects will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getObjectDistance ( ) #

Returns a distance, at which (and farther) objects will not be rendered.

Return value

Distance in units.

void engine.render.setOccluders ( int occluders ) #

Enables or disables rendering of occluders.
Notice
To set the value via the console, use the render_occluders console command.

Arguments

  • int occluders - 1 to enable rendering of occluders, 0 to disable it. The default value is 1.

int engine.render.isOccluders ( ) #

Returns a value indicating if rendering of occluders is enabled.
Notice
To get the value via the console, use the render_occluders console variable.

Return value

1 if rendering of occluders is enabled; otherwise, 0. The default value is 1.

void engine.render.setOccludersResolution ( vec2 resolution ) #

Sets the resolution of the texture, to which occluders are rendered.
Notice
To set the value via the console, use the render_occluders_resolution console command.

Arguments

  • vec2 resolution - Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (128, 64).

vec2 engine.render.getOccludersResolution ( ) #

Returns the current resolution of the texture, to which occluders are rendered.
Notice
To get the value via the console, use the render_occluders_resolution console variable.

Return value

Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (128, 64).

void engine.render.setOccludersShadows ( int shadows ) #

Sets the value indicating whether rendering of occluders for shadows is enabled.
Notice
To set the value via the console, use the render_occluders_shadows console command.

Arguments

  • int shadows - 1 to enable rendering of occluders for shadows, 0 to disable it. The default value is 0.

int engine.render.isOccludersShadows ( ) #

Returns the value indicating whether rendering of occluders for shadows is enabled.
Notice
To get the value via the console, use the render_occluders_shadows console variable.

Return value

1 if rendering of occluders for shadows is enabled; otherwise, 0. The default value is 0.

void engine.render.setOccludersShadowsResolution ( vec2 resolution ) #

Sets the resolution of the texture, to which occluders for shadows are rendered.
Notice
To set the value via the console, use the render_occluders_shadows_resolution console command.

Arguments

  • vec2 resolution - Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (512, 512).

vec2 engine.render.getOccludersShadowsResolution ( ) #

Returns the current resolution of the texture, to which occluders for shadows are rendered.
Notice
To get the value via the console, use the render_occluders_shadows_resolution console variable.

Return value

Texture resolution (X, Y), in pixels. Available values are from (1, 1) to (1024, 1024). The default value is (512, 512).

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setPanorama ( int panorama ) #

Sets the mode of panoramic rendering.
Notice
If panoramic rendering is enabled, underwater shafts and water line effects will be disabled.

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 engine.render.getPanorama ( ) #

Returns the value indicating current mode of panoramic rendering.
Notice
If panoramic rendering is enabled, underwater shafts and water line effects will be disabled.

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 engine.render.setPostMaterials ( string 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

  • string materials - Comma-separated list of post postprocess material names.

string engine.render.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 engine.render.setReflectionDistance ( float distance ) #

Sets the distance, at which (and farther) reflections will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getReflectionDistance ( ) #

Returns the distance, at which (and farther) reflections will not be rendered.

Return value

Distance in units.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setRefraction ( int refraction ) #

Enables or disables refraction.

Arguments

  • int refraction - 1 to enable refraction, 0 to disable it. The default value is 1.

int engine.render.isRefraction ( ) #

Returns a value indicating if refraction is enabled.

Return value

1 if refraction is enabled; otherwise, 0.

void engine.render.setRefractionDispersion ( 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

  • vec3 dispersion - Dispersion displacement per channel. If a negative value is set for a channel, 0 will be used instead.

vec3 engine.render.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 engine.render.setPrePostMaterials ( string materials ) #

Sets pre-post materials that are applied before all other postprocess (such as HDR, DoF, etc.) are rendered. Materials are applied in the order of listing.

Arguments

  • string materials - List of comma-separated pre-post material names.

string engine.render.getPrePostMaterials ( ) #

Returns names of the current pre-post 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

Name of the current pre-post materials.

void engine.render.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 engine.render.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 engine.render.setShaderDefines ( string defines ) #

Set additional shader defines.

Arguments

  • string defines - Additional shader defines.

string engine.render.getShaderDefines ( ) #

Returns additional shader defines.

Return value

Additional shader defines.

void engine.render.setShadowDistance ( float distance ) #

Sets the distance, at which (and farther) shadows will not be rendered.

Arguments

  • float distance - Distance in units.

float engine.render.getShadowDistance ( ) #

Returns the distance, at which (and farther) shadows will not be rendered.

Return value

Distance in units.

void engine.render.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 engine.render.isShadows ( ) #

Returns a value indicating whether shadows are rendered or not.

Return value

1 if shadows are rendered; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.isShadowShafts ( ) #

Returns a value indicating if volumetric shadows are enabled.

Return value

1 if volumetric shadows are enabled; otherwise, 0.

void engine.render.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 engine.render.getShadowShaftsExposure ( ) #

Returns the contrast used for volumetric shadows.

Return value

Shadow contrast.

void engine.render.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 engine.render.getShadowShaftsLength ( ) #

Returns the length of volumetric shadows.

Return value

Shadow length.

void engine.render.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.
Notice
To set the value via the console, use the render_shadows_screenspace console command.

Arguments

  • int space - 1 to enable screen space shadows, 0 to disable. The default value is 1.

int engine.render.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.
Notice
To get the value via the console, use the render_shadows_screenspace console variable.

Return value

1 if screen space shadows are enabled; otherwise, 0.

void engine.render.setShadowsPenumbraMode ( int mode ) #

Sets the global quality mode to be used for rendering penumbra from all light sources by default. This mode enables simulation of real-world shadows by keeping sharp contact shadows closer to the base and softening the farther the shadow stretches away. Higher values produce softer shadows.
Notice
  • You can set penumbra quality mode or disable penumbra rendering for each light source individually.
  • To set the value via the console, use the render_shadows_penumbra_mode console variable.

Arguments

  • int mode - Global quality mode to be used for rendering penumbra from all light sources:
    • 0 - penumbra rendering is disabled, shadow edges are crisp and sharp (no shadow softness at all).
    • 1 — low quality
    • 2 — medium quality
    • 3 — high quality
    • 4 — ultra quality

int engine.render.getShadowsPenumbraMode ( ) #

Returns the global quality mode currently used for rendering penumbra from all light sources by default. This mode enables simulation of real-world shadows by keeping sharp contact shadows closer to the base and softening the farther the shadow stretches away. Higher values produce softer shadows.
Notice
  • You can set penumbra quality mode or disable penumbra rendering for each light source individually.
  • To get the value via the console, use the render_shadows_penumbra_mode console variable.

Return value

Global quality mode currently used for rendering penumbra from all light sources:
  • 0 - penumbra rendering is disabled, shadow edges are crisp and sharp (no shadow softness at all).
  • 1 — low quality
  • 2 — medium quality
  • 3 — high quality
  • 4 — ultra quality

void engine.render.setShadowsPenumbraNoise ( int noise ) #

Enables or disables noise for penumbra rendering. This noise is used for smoothing.
Notice
To set the value via the console, use the render_shadows_penumbra_noise console command.

Arguments

  • int noise - 1 to enable noise for penumbra rendering, 0 to disable. The default value is 1.

int engine.render.isShadowsPenumbraNoise ( ) #

Returns a value indicating if noise for penumbra rendering is enabled. This noise is used for smoothing.
Notice
To get the value via the console, use the render_shadows_penumbra_noise console variable.

Return value

1 if noise for penumbra rendering is enabled; otherwise, 0.

void engine.render.setShadowsFilterMode ( int mode ) #

Sets the global filtering mode to be used for shadows from all light sources by default. This mode determines quality of soft shadows. Higher quality produces smoother shadow edges.
Notice
  • You can set filtering mode or disable filtering for each light source individually.
  • To set the value via the console, use the render_shadows_filter_mode console variable.

Arguments

  • int mode - Global filtering mode to be used for shadows from all light sources:
    • 0 - filtering for shadows is disabled, the stair-step effect is clearly seen at the edges of shadows.
    • 1 — low quality
    • 2 — medium quality
    • 3 — high quality
    • 4 — ultra quality

int engine.render.getShadowsFilterMode ( ) #

Returns the global filtering mode currently used for shadows from all light sources by default. This mode determines quality of soft shadows, it is used to reduce the stair-step effect making the edges smoother. Higher quality produces smoother shadow edges.
Notice
  • You can set filtering mode or disable filtering for each light source individually.
  • To get the value via the console, use the render_shadows_filter_mode console variable.

Return value

Global filtering mode currently used for shadows from all light sources:
  • 0 - filtering for shadows is disabled, the stair-step effect is clearly seen at the edges of shadows.
  • 1 — low quality
  • 2 — medium quality
  • 3 — high quality
  • 4 — ultra quality

void engine.render.setShadowsFilterNoise ( int noise ) #

Enables or disables noise for shadow filtering. This noise is used for smoothing.
Notice
To set the value via the console, use the render_shadows_filter_noise console command.

Arguments

  • int noise - 1 to enable noise for shadow filtering, 0 to disable. The default value is 1.

int engine.render.isShadowsFilterNoise ( ) #

Returns a value indicating if noise for shadow filtering is enabled. This noise is used for smoothing.
Notice
To get the value via the console, use the render_shadows_filter_noise console variable.

Return value

1 if noise for shadow filtering is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.isShadowsWorldLerpCascades ( ) #

Returns the value indicating if shadows cascades lerp is enabled.

Return value

1 if shadows cascades lerp is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.setSharpenIntensity ( float intensity ) #

Sets intensity of the sharpening effect.

Arguments

  • float intensity - Intensity of the sharpening effect.

float engine.render.getSharpenIntensity ( ) #

Returns intensity of the sharpening effect.

Return value

Intensity of the sharpening effect.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.isShowGeodeticPivot ( ) #

Returns a value indicating whether geodetic pivots are displayed or not.

Return value

1 if geodetic pivots are displayed; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.isShowScissors ( ) #

Returns a value indicating if scissor rectangles are displayed.

Return value

1 if scissor rectangles are displayed; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setCloudsEnabled ( int enabled ) #

Enables or disables clouds rendering.
Notice
To set the value via the console, use the render_clouds_enabledconsole command.

Arguments

  • int enabled - 0 to skip rendering of clouds, 1 to render clouds. The default value is 1.

int engine.render.isCloudsEnabled ( ) #

Returns a value indicating if rendering of clouds is enabled.
Notice
To get the value via the console, use the render_clouds_enabledconsole variable.

Return value

1 if rendering of clouds is enabled; otherwise, 0.

void engine.render.setLightsEnabled ( int enabled ) #

Enables or disables lights rendering.
Notice
To set the value via the console, use the render_lights_enabledconsole command.

Arguments

  • int enabled - 0 to skip rendering of lights, 1 to render lights. The default value is 1.

int engine.render.isLightsEnabled ( ) #

Returns a value indicating if rendering of lights is enabled.
Notice
To get the value via the console, use the render_lights_enabledconsole variable.

Return value

1 if rendering of lights is enabled; otherwise, 0.

void engine.render.setWaterEnabled ( int enabled ) #

Enables or disables water rendering.
Notice
To set the value via the console, use the render_water_enabledconsole command.

Arguments

  • int enabled - 0 to skip rendering of water, 1 to render water. The default value is 1.

int engine.render.isWaterEnabled ( ) #

Returns a value indicating if rendering of water is enabled.
Notice
To get the value via the console, use the render_water_enabledconsole variable.

Return value

1 if rendering of water is enabled; otherwise, 0.

void engine.render.setScreenSpaceEffects ( int effects ) #

Enables or disables rendering of screen-space effects.
Notice
To set the value via the console, use the render_screen_space_effectsconsole command.

Arguments

  • int effects - 1 to enable rendering of screen-space effects, 1 to skip them. The default value is 1.

int engine.render.isScreenSpaceEffects ( ) #

Returns a value indicating if rendering of screen-space effects is enabled.
Notice
To get the value via the console, use the render_screen_space_effectsconsole variable.

Return value

1 if rendering of screen-space effects is enabled; otherwise, 0.

void engine.render.setPrePostMaterialsEnabled ( int enabled ) #

Enables or disables rendering of pre-post materials (post-process materials applied before all other Unigine post-processes).
Notice
To set the value via the console, use the render_pre_post_materials_enabledconsole command.

Arguments

  • int enabled - 1 to render pre-post materials, 0 to skip them. The default value is 1.

int engine.render.isPrePostMaterialsEnabled ( ) #

Returns a value indicating if rendering of pre-post materials (post-process materials applied before all other Unigine post-processes) is enabled.
Notice
To get the value via the console, use the render_pre_post_materials_enabledconsole variable.

Return value

1 if rendering of pre-post materials is enabled; otherwise, 0.

void engine.render.setTransparentEnabled ( int enabled ) #

Enables or disables rendering of the transparent pass.
Notice
To set the value via the console, use the render_transparent_enabledconsole command.

Arguments

  • int enabled - 1 to render the transparent pass, 0 to skip it. The default value is 1.

int engine.render.isTransparentEnabled ( ) #

Returns a value indicating if the transparent pass is rendered.
Notice
To get the value via the console, use the render_transparent_enabledconsole variable.

Return value

1 if the transparent pass is rendered; otherwise, 0.

void engine.render.setTransparentAmbient ( int ambient ) #

Enables or disables rendering of the transparent ambient pass.
Notice
To set the value via the console, use the render_transparent_ambientconsole command.

Arguments

  • int ambient - 1 to render the transparent ambient pass, 0 to skip it. The default value is 1.

int engine.render.isTransparentAmbient ( ) #

Returns a value indicating if the transparent ambient pass is rendered.
Notice
To get the value via the console, use the render_transparent_ambientconsole variable.

Return value

1 if the transparent ambient pass is rendered; otherwise, 0.

void engine.render.setTransparentDeferred ( int deferred ) #

Enables or disables rendering of the transparent deferred pass.
Notice
To set the value via the console, use the render_transparent_deferredconsole command.

Arguments

  • int deferred - 1 to render the transparent deferred pass, 0 to skip it. The default value is 1.

int engine.render.isTransparentDeferred ( ) #

Returns a value indicating if the transparent deferred pass is rendered.
Notice
To get the value via the console, use the render_transparent_deferredconsole variable.

Return value

1 if the transparent deferred pass is rendered; otherwise, 0.

void engine.render.setTransparentLight ( int light ) #

Enables or disables rendering of the transparent light pass.
Notice
To set the value via the console, use the render_transparent_lightconsole command.

Arguments

  • int light - 1 to render the transparent light pass, 0 to skip it. The default value is 1.

int engine.render.isTransparentLight ( ) #

Returns a value indicating if the transparent light pass is rendered.
Notice
To get the value via the console, use the render_transparent_lightconsole variable.

Return value

1 if the transparent light pass is rendered; otherwise, 0.

void engine.render.setTransparentMultipleEnvProbes ( int probes ) #

Enables or disables rendering of the transparent multiple environment probes pass.
Notice
To set the value via the console, use the render_transparent_multiple_env_probesconsole command.

Arguments

  • int probes - 1 to render the transparent multiple environment probes pass, 0 to skip it. The default value is 1.

int engine.render.isTransparentMultipleEnvProbes ( ) #

Returns a value indicating if the transparent multiple environment probes pass is rendered.
Notice
To get the value via the console, use the render_transparent_multiple_env_probesconsole variable.

Return value

1 if the transparent multiple environment probes pass is rendered; otherwise, 0.

void engine.render.setSkyRotation ( quat rotation ) #

Sets sky rotation.

Arguments

  • quat rotation - Sky rotation quaternion.

quat engine.render.getSkyRotation ( ) #

Returns sky rotation.

Return value

Sky rotation quaternion.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setSSAONoise ( int noise ) #

Enables or disables noise for the SSAO (Screen Space Ambient Occlusion) effect. This option reduces banding effect.
Notice
It is recommended to use noise with TAA enabled.

Arguments

  • int noise - 1 to enable SSAO noise, 0 to disable. The default value is 1.

int engine.render.isSSAONoise ( ) #

Returns the value indicating if noise for the SSAO (Screen Space Ambient Occlusion) effect is enabled. This option reduces banding effect.
Notice
It is recommended to use noise with TAA enabled.

Return value

1 if SSAO noise is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getSSAOThreshold ( ) #

Returns the current threshold value for the SSAO (Screen Space Ambient Occlusion) effect.

Return value

Current SSAO threshold value.

void engine.render.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.
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Arguments

  • int tracing - 1 to enable ray tracing for SSAO calculation, 0 to disable. The default value is 1.

int engine.render.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.
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Return value

1 if ray tracing is used for SSAO calculation; otherwise, 0.

void engine.render.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.
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Arguments

  • int denoise - 1 to enable noise reduction for the ray-traced SSAO, 0 to disable.

int engine.render.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.
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Return value

1 if noise reduction for the ray-traced SSAO is enabled; otherwise, 0.

void engine.render.setSSAORayTracingThreshold ( float threshold ) #

Sets the threshold value for the ray-traced SSAO (Screen Space Ambient Occlusion).
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Arguments

  • float threshold - SSAO ray tracing threshold value. The default value is 1.0f.

float engine.render.getSSAORayTracingThreshold ( ) #

Returns the current threshold value for the ray-traced SSAO (Screen Space Ambient Occlusion).
Notice
Ray-traced SSAO calculation available only when the SSRTGI technique is enabled.

Return value

SSAO ray tracing threshold value. The default value is 1.0f.

void engine.render.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 engine.render.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 engine.render.setSSGI ( int ssgi ) #

Enables or disables the SSGI (Screen Space Global Illumination) effect.
Notice
To enable or disable the effect via the console, run the render_ssgiconsole command.

Arguments

  • int ssgi - 1 to enable the SSGI effect, 0 to disable it. The default value is 0.

int engine.render.isSSGI ( ) #

Returns the value indicating if the SSGI (Screen Space Global Illumination) effect is enabled.
Notice
To check if the effect is enabled, use also the render_ssgiconsole variable.

Return value

1 if the SSGI effect is enabled; otherwise, 0.

void engine.render.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.
Notice
To set the intensity via the console, use the render_ssgi_intensityconsole command.

Arguments

  • float intensity - SSGI intensity value. The default value is 1.0f.

float engine.render.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.
Notice
To get the intensity via the console, use the render_ssgi_intensityconsole variable.

Return value

SSGI intensity value. The default value is 1.0f.

void engine.render.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.
Notice
To set the threshold via the console, use the render_ssgi_normal_thresholdconsole command.

Arguments

  • float threshold - SSGI normal threshold value. The default value is 1.0f.

float engine.render.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.
Notice
To get the threshold via the console, use the render_ssgi_normal_thresholdconsole variable.

Return value

SSGI normal threshold value.

void engine.render.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
Notice
To set the quality via the console, use the render_ssgi_qualityconsole command.

Arguments

  • int quality - SSGI quality:
    • 0 - Low
    • 1 - Medium (by default)
    • 2 - High
    • 3 - Ultra

int engine.render.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
Notice
To get the quality via the console, use the render_ssgi_qualityconsole variable.

Return value

SSGI quality:
  • 0 - Low
  • 1 - Medium (by default)
  • 2 - High
  • 3 - Ultra

void engine.render.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.
Notice
To set the radius via the console, use the render_ssgi_radiusconsole command.

Arguments

  • float radius - SSGI radius value. The default value is 1.0f.

float engine.render.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.
Notice
To get the radius via the console, use the render_ssgi_radiusconsole variable.

Return value

SSGI radius value. The default value is 1.0f.

void engine.render.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.
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Arguments

  • int tracing - 1 to enable ray tracing for SSGI calculation, 0 to disable. The default value is 1.

int engine.render.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.
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Return value

1 if ray tracing is used for SSGI calculation; otherwise, 0.

void engine.render.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.
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Arguments

  • int denoise - 1 to enable noise reduction for the ray-traced SSGI, 0 to disable.

int engine.render.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.
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Return value

1 if noise reduction for the ray-traced SSGI is enabled; otherwise, 0.

void engine.render.setSSGIRayTracingThreshold ( float threshold ) #

Sets the threshold value for the ray-traced SSGI (Screen Space Global Illumination).
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Arguments

  • float threshold - SSGI ray tracing threshold value. The default value is 1.0f.

float engine.render.getSSGIRayTracingThreshold ( ) #

Returns the current threshold value for the ray-traced SSGI (Screen Space Global Illumination).
Notice
Ray-traced SSGI calculation available only when the SSRTGI technique is enabled.

Return value

SSGI ray tracing threshold value. The default value is 1.0f.

void engine.render.setSSGIResolution ( int resolution ) #

Sets the resolution of SSGI (Screen Space Global Illumination).
Notice
To set the value via the console, use the render_ssgi_resolutionconsole command.

Arguments

  • int resolution - SSGI resolution:
    • 0 - quarter resolution.
    • 1 - half resolution (by default).
    • 2 - full resolution.

int engine.render.getSSGIResolution ( ) #

Returns the resolution of SSGI (Screen Space Global Illumination).
Notice
To get the value via the console, use the render_ssgi_resolutionconsole variable.

Return value

SSGI resolution:
  • 0 - quarter resolution.
  • 1 - half resolution (by default).
  • 2 - full resolution.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
Notice
The option is available only when importance sampling is enabled.

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 engine.render.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 engine.render.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 engine.render.getSSRNoiseStep ( ) #

Returns the intensity of the step noise used for SSR (Screen Space Reflections) calculation.

Return value

Step noise intensity.

void engine.render.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.
Notice
The option is available when importance sampling is enabled.

Arguments

  • int rays - Number of rays per pixel within the [1; 64] range. The default value is 4.

int engine.render.getSSRNumRays ( ) #

Returns the number of rays of SSR (Screen Space Reflections) per pixel that are used to calculate rough refrections.
Notice
The option is available when importance sampling is enabled.

Return value

Number of rays per pixel within the [1; 64] range.

void engine.render.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 engine.render.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 engine.render.setSSRResolution ( int resolution ) #

Sets the resolution of SSR (Screen Space Reflections).
Notice
To set the value via the console, use the console command.

Arguments

  • int resolution - SSR resolution:
    • 0 - quarter resolution.
    • 1 - half resolution (by default).
    • 2 - full resolution.

int engine.render.getSSRResolution ( ) #

Returns the resolution of SSR (Screen Space Reflections).
Notice
To get the value via the console, use the console variable.

Return value

One of the following values:
  • 0 - quarter resolution.
  • 1 - half resolution (by default).
  • 2 - full resolution.

void engine.render.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 engine.render.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 engine.render.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.
    Notice
    To gain performance, this option can be set to lower values while enabling increased accuracy.

int engine.render.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 engine.render.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.
Notice
To set the value via the console, use the render_ssr_roughness_qualityconsole command.

Arguments

  • int quality - Roughness quality:
    • 0 - low quality.
    • 1 - medium quality (by default).
    • 2 - high quality.
    • 3 - ultra quality.

int engine.render.getSSRRoughnessQuality ( ) #

Returns the current quality of SSR (Screen Space Reflections) roughness.
Notice
To set the value via the console, use the render_ssr_roughness_qualityconsole command.

Return value

Roughness quality:
  • 0 - low quality.
  • 1 - medium quality (by default).
  • 2 - high quality.
  • 3 - ultra quality.

void engine.render.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 engine.render.getSSRStepSize ( ) #

Returns the size of the trace step used for SSR (Screen Space Reflections) calculation.

Return value

Step size.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.getSSRTGINoiseRay ( ) #

Returns the intensity of the ray noise used for SSRTGI calculation.

Return value

Ray noise intensity in range [0.0f;1.0f].

void engine.render.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 engine.render.getSSRTGINoiseStep ( ) #

Returns the intensity of the step noise used for SSRTGI calculation.

Return value

Step noise intensity in range [0.0f;1.0f].

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
    Notice
    To gain performance this option can be set to lower values while enabling the increased accuracy.

int engine.render.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 engine.render.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 engine.render.getSSRTGIStepSize ( ) #

Returns the size of the trace step used for SSRTGI calculation.

Return value

Step size.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setSSSSS ( int sssss ) #

Enables or disables the SSSSS (screen-space subsurface scattering) effect.
Notice
To set the value via the console, use the render_sssssconsole command.

Arguments

  • int sssss - 1 to enable the SSSSS effect, 0 to disable. The default value is 0.

int engine.render.isSSSSS ( ) #

Returns a value indicating if the SSSSS (screen-space subsurface scattering) effect is enabled.
Notice
To get the value via the console, use the render_sssssconsole variable.

Return value

1 if the SSS effect is enabled; otherwise, 0.

void engine.render.setSSSSSColor ( 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.
Notice
To set the value via the console, use the render_sssss_colorconsole command.

Arguments

  • vec4 color - A subsurface scattering color.

vec4 engine.render.getSSSSSColor ( ) #

Returns the current subsurface scattering color.
Notice
To get the value via the console, use the render_sssss_colorconsole variable.

Return value

A subsurface scattering color.

void engine.render.setSSSSSQuality ( int quality ) #

Sets the quality of the SSSSS (screen-space subsurface scattering) effect.
Notice
To set the value via the console, use the render_sssss_qualityconsole command.

Arguments

  • int quality - SSS quality:
    • 0 - low quality.
    • 1 - medium quality (by default).
    • 2 - high quality.
    • 3 - ultra quality.

int engine.render.getSSSSSQuality ( ) #

Returns the quality of the SSSSS (screen-space subsurface scattering) effect.
Notice
To get the value via the console, use the render_sssss_qualityconsole variable.

Return value

SSS quality:
  • 0 - low quality.
  • 1 - medium quality (by default).
  • 2 - high quality.
  • 3 - ultra quality.

void engine.render.setSSSSSRadius ( 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.
Notice
To set the value via the console, use the render_sssss_radiusconsole command.

Arguments

  • float radius - Subsurface scattering radius. The default value is 1.0f.

float engine.render.getSSSSSRadius ( ) #

Returns the current subsurface scattering radius.
Notice
To get the value via the console, use the render_sssss_radiusconsole variable.

Return value

Subsurface scattering radius value.

void engine.render.setSSSSSResolution ( int resolution ) #

Sets the resolution of the SSSSS (screen-space subsurface scattering) effect.
Notice
To set the value via the console, use the render_sssss_resolutionconsole command.

Arguments

  • int resolution - SSS resolution:
    • 0 - half resolution (by default).
    • 1 - full resolution.

int engine.render.getSSSSSResolution ( ) #

Returns the resolution of the SSSSS (screen-space subsurface scattering) effect.
Notice
To get the value via the console, use the render_sssss_resolutionconsole variable.

Return value

SSS resolution:
  • 0 - half resolution (by default).
  • 1 - full resolution.

void engine.render.setStereo ( int stereo ) #

Sets the stereo rendering mode.
Notice
To set the value via the console, use the render_stereoconsole command. It is not possible to set a stereo mode via a console if the default system script is used; it allows for setting it only on the start-up.

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 engine.render.getStereo ( ) #

Returns the current stereo rendering mode.
Notice
To get the value via the console, use the render_stereoconsole variable.

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 engine.render.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 engine.render.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 engine.render.setStereoOffset ( float offset ) #

Sets the virtual camera offset (an offset after the perspective projection).

Arguments

  • float offset - Virtual camera offset in units.

float engine.render.getStereoOffset ( ) #

Returns the virtual camera offset (an offset after the perspective projection).

Return value

Virtual camera offset in units.

void engine.render.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 engine.render.getStereoRadius ( ) #

Returns the current radius for stereo (the half of the separation distance between the cameras).

Return value

Stereo radius, in units.

void engine.render.setSunShafts ( int shafts ) #

Enables or disables the light shafts effects.
Notice
To set the value via the console, use the render_sun_shaftsconsole command.

Arguments

  • int shafts - 1 to enable light shafts, 0 to disable.

int engine.render.isSunShafts ( ) #

Returns a value indicating if light shafts are enabled.
Notice
To get the value via the console, use the render_sun_shaftsconsole variable.

Return value

1 if the light shafts are enabled; otherwise, 0.

void engine.render.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 engine.render.getSunShaftsAttenuation ( ) #

Returns the current power of fading for HDR shaft flare across its length.

Return value

Fading power.

void engine.render.setSunShaftsColor ( vec4 color ) #

Sets the color of the lens shafts.

Arguments

  • vec4 color - Color of lens shafts.

vec4 engine.render.getSunShaftsColor ( ) #

Returns the current color of the lens shafts.

Return value

Color of lens shafts.

void engine.render.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 engine.render.getSunShaftsLength ( ) #

Returns the length of a flare shaft.

Return value

Length of a flare shaft relative to the screen width.

void engine.render.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 engine.render.getSunShaftsScale ( ) #

Returns the current multiplier for color of HDR shaft flares.

Return value

Shaft color scale.

void engine.render.setSunShaftsThreshold ( float threshold ) #

Sets the brightness threshold for flare shafts.

Arguments

  • float threshold - Flare shafts threshold.

float engine.render.getSunShaftsThreshold ( ) #

Returns the current brightness threshold for flare shafts.

Return value

Flare shafts threshold.

void engine.render.setSupersampling ( float supersampling ) #

Sets the number of samples per pixel used for supersampling.
Notice
To set the value via the console, use the render_supersamplingconsole command.

Arguments

  • float supersampling - Number of samples per pixel within the range [1e-6f; 8.0f]. The default value is 1.0f

float engine.render.getSupersampling ( ) #

Returns the number of samples per pixel used for supersampling.
Notice
To get the value via the console, use the render_supersamplingconsole variable.

Return value

Number of samples per pixel.

void engine.render.setTAAFramesByColor ( int color ) #

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.
Notice
To set the value via the console, use the render_taa_frames_by_colorconsole command.

Arguments

  • int color - 1 to enable the TAA color clamping option, 0 to disable it. The default value is 1.

int engine.render.isTAAFramesByColor ( ) #

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.
Notice
To get the value via the console, use the render_taa_frames_by_colorconsole variable.

Return value

1 if TAA color clamping is enabled; otherwise, 0.

void engine.render.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.
Notice
To enable/disable this feature via the Console, use the render_taa_diagonal_neighborsconsole command.

Arguments

  • int neighbors - 1 to take diagonally neighboring pixels into account in the process of color clamping for TAA, 0 to ignore them.

int engine.render.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.
Notice
To get the value via the Console, use the render_taa_diagonal_neighborsconsole variable.

Return value

1 if diagonally neighboring pixels are to be taken into account in the process of color clamping for TAA; otherwise, 0.

void engine.render.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.
Notice
To set the value via the console, use the render_taa_fix_flickerconsole command.

Arguments

  • int flicker - 1 to enable the TAA fix flicker option, 0 to disable it. The default value is 1.

int engine.render.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.
Notice
To get the value via the console, use the render_taa_fix_flickerconsole variable.

Return value

1 if the TAA fix flicker option is enabled; otherwise, 0.

void engine.render.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.
Notice
To set the value via the console, use the render_taa_frame_countconsole command.

Arguments

  • float count - TAA frame count value. The default value is 30.0f.

float engine.render.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.
Notice
To get the value via the console, use the render_taa_frame_countconsole variable.

Return value

TAA frame count value.

void engine.render.setTAAMaxFramesByVelocity ( float velocity ) #

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.
Notice
To set the value via the console, use the render_taa_max_frames_by_velocityconsole command.

Arguments

  • float velocity - Maximum TAA frame count value. The default value is 60.0f.

float engine.render.getTAAMaxFramesByVelocity ( ) #

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.
Notice
To get the value via the console, use the render_taa_max_frames_by_velocityconsole variable.

Return value

Maximum TAA frame count value.

void engine.render.setTAAMinFramesByVelocity ( float velocity ) #

Sets the minimum frame count of TAA (Temporal Anti-Aliasing). Specifies the minimum number of frames combined for fast moving pixels on the screen.
Notice
To set the value via the console, use the render_taa_min_frames_by_velocityconsole command.

Arguments

  • float velocity - Minimum TAA frame count value. The default value is 4.0f.

float engine.render.getTAAMinFramesByVelocity ( ) #

Returns the minimum frame count of TAA (Temporal Anti-Aliasing). Specifies the minimum number of frames combined for fast moving pixels on the screen.
Notice
To get the value via the console, use the render_taa_min_frames_by_velocityconsole variable.

Return value

Minimum TAA frame count value.

void engine.render.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.
Notice
To set the value via the console, use the render_taa_preserve_detailsconsole command.

Arguments

  • float details - TAA detail level value. The default value is 1.5f.

float engine.render.getTAAPreserveDetails ( ) #

Returns the detail level of TAA (Temporal Anti-Aliasing). The higher the value, the more detailed the image is. Can produce additional flickering.
Notice
To get the value via the console, use the render_taa_preserve_detailsconsole variable.

Return value

TAA detail level value.

void engine.render.setTAAFramesByVelocity ( int velocity ) #

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.
Notice
To set the value via the console, use the render_taa_frames_by_velocityconsole command.

Arguments

  • int velocity - 1 to enable the TAA velocity clamping option, 0 to disable it. The default value is 1.

int engine.render.isTAAFramesByVelocity ( ) #

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.
Notice
To get the value via the console, use the render_taa_frames_by_velocityconsole variable.

Return value

1 if TAA velocity clamping is enabled; otherwise, 0.

void engine.render.setTAAFramesVelocityThreshold ( float threshold ) #

Sets the velocity threshold of TAA (Temporal Anti-Aliasing), at which pixels are treated as fast moving ones.
Notice
To set the value via the console, use the render_taa_frames_velocity_thresholdconsole command.

Arguments

  • float threshold - TAA velocity threshold value. The default value is 1.0f.

float engine.render.getTAAFramesVelocityThreshold ( ) #

Returns the velocity threshold of TAA (Temporal Anti-Aliasing), at which pixels are treated as fast moving ones.
Notice
To get the value via the console, use the render_taa_frames_velocity_thresholdconsole variable.

Return value

TAA velocity threshold value.

void engine.render.setTerrainGlobalAnisotropy ( int anisotropy ) #

Sets the global terrain texture anisotropy level (degree of anisotropic filtering). Anisotropy for the global 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.
Notice
To set the value via the console, use render_terrain_global_anisotropyconsole command.

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 engine.render.getTerrainGlobalAnisotropy ( ) #

Returns the current global terrain texture anisotropy level (degree of anisotropic filtering). Anisotropy for the global terrain has a big impact for the performance if terrain has a lot of tiled detail materials.
Notice
To get the value via the console, use render_terrain_global_anisotropyconsole variable.

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 engine.render.setTerrainGlobalDisplacement ( int displacement ) #

Enables or disables displacement mapping for the global terrain.
Notice
To set the value via the console, use render_terrain_global_displacementconsole command.

Arguments

  • int displacement - 1 to enable displacement mapping for the global terrain; 0 to disable it. The default value is 1.

int engine.render.isTerrainGlobalDisplacement ( ) #

Returns a value indicating if displacement mapping is enabled for the global terrain.
Notice
To get the value via the console, use render_terrain_global_displacementconsole variable.

Return value

1 if displacement mapping is enabled for the global terrain; otherwise, 0.

void engine.render.setTerrainGlobalDisplacementNormal ( int normal ) #

Enables or disables use of normals in displacement mapping for global terrain rendering.
Notice
To set the value via the console, use render_terrain_global_displacement_normalconsole command.

Arguments

  • int normal - 1 to enable displacement mapping for the global terrain; 0 to disable it. The default value is 1.

int engine.render.isTerrainGlobalDisplacementNormal ( ) #

Returns a value indicating if displacement mapping for global terrain rendering uses normals.
Notice
To get the value via the console, use render_terrain_global_displacement_normalconsole variable.

Return value

1 if displacement mapping for global terrain rendering uses normals; otherwise, 0.

void engine.render.setTerrainGlobalHoles ( int holes ) #

Sets a value indicating if decal-based holes for the global terrain are enabled.
Notice
To set the value via the console, use render_terrain_global_holesconsole command.

Arguments

  • int holes - 1 to enable decal-based holes for the global terrain; otherwise, 0.

int engine.render.isTerrainGlobalHoles ( ) #

Returns a value indicating if decal-based holes for the global terrain are enabled.
Notice
To get the value via the console, use render_terrain_global_holesconsole variable.

Return value

1 if decal-based holes for the global terrain are enabled; otherwise, 0.

void engine.render.setTerrainGlobalTriplanar ( int triplanar ) #

Enables or disables triplanar texture mapping for the global terrain.
Notice
To set the value via the console, use render_terrain_global_triplanarconsole command.

Arguments

  • int triplanar - 1 to enable triplanar texture mapping for the global terrain; 0 to use planar UV mapping instead.

int engine.render.isTerrainGlobalTriplanar ( ) #

Returns a value indicating if triplanar texture mapping is enabled for the global terrain.
Notice
To get the value via the console, use render_terrain_global_triplanarconsole variable.

Return value

1 if triplanar texture mapping is enabled for the global terrain; otherwise, 0.

void engine.render.setTexturesAnisotropy ( int anisotropy ) #

Sets the anisotropy level for textures (degree of anisotropic filtering).
Notice
To set the value via the console, use render_textures_anisotropyconsole command.

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 engine.render.getTexturesAnisotropy ( ) #

Returns current anisotropy level for textures (degree of anisotropic filtering).
Notice
To get the value via the console, use render_textures_anisotropyconsole variable.

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 engine.render.setTexturesFilter ( int filter ) #

Sets the texture filtering mode.
Notice
To set the value via the console, use render_textures_filterconsole command.

Arguments

  • int filter - Texture filtering mode:
    • 0 - bilinear filtering.
    • 1 - trilinear filtering (by default).

int engine.render.getTexturesFilter ( ) #

Returns the current texture filtering mode.
Notice
To get the value via the console, use render_textures_filterconsole variable.

Return value

Texture filtering mode:
  • 0 - bilinear filtering.
  • 1 - trilinear filtering (by default).

void engine.render.setTexturesMaxResolution ( int resolution ) #

Sets the maximum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.
Notice
To set the value via the console, use render_textures_max_resolutionconsole command.

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 engine.render.getTexturesMaxResolution ( ) #

Returns the current maximum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.
Notice
To get the value via the console, use render_textures_max_resolutionconsole variable.

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 engine.render.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.
Notice
To set the value via the console, use render_textures_min_resolution console command.

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 engine.render.getTexturesMinResolution ( ) #

Returns the current minimum resolution of all textures. The engine doesn't compress existing textures: it uses specified mipmaps of *.dds textures.
Notice
To get the value via the console, use render_textures_min_resolution console variable.

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 engine.render.setTexturesQuality ( int quality ) #

Sets the resolution of textures.
Notice
To set the value via the console, use render_textures_qualityconsole command.

Arguments

int engine.render.getTexturesQuality ( ) #

Returns the current resolution of textures.
Notice
To get the value via the console, use render_textures_qualityconsole variable.

Return value

One of the RENDER_QUALITY_* pre-defined variables.

void engine.render.setTransparentBlur ( int blur ) #

Enables or disables transparent blur for materials. This option makes it possible to render matte transparent materials like matte glass.
Notice
To set the value via the console, use render_transparent_blurconsole command.

Arguments

  • int blur - 1 to enable transparent blur for materials, 0 to disable it. The default value is 1.

int engine.render.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.
Notice
To get the value via the console, use render_transparent_blurconsole variable.

Return value

1 if transparent blur is enabled for materials; otherwise, 0.

void engine.render.setViewport ( Viewport viewport ) #

Sets a viewport for a main application window.

Arguments

  • Viewport viewport - Viewport instance.

Viewport engine.render.getViewport ( ) #

Returns a main application window viewport.

Return value

Viewport instance.

void engine.render.setVirtualResolution ( 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.
Notice
To set the value via the console, use the render_virtual_resolution console command.

Arguments

  • vec2 resolution - Virtual screen resolution (X, Y), in pixels. The default value is (-1, -1).

vec2 engine.render.getVirtualResolution ( ) #

Returns the current virtual screen resolution.
Notice
To get the value via the console, use the render_virtual_resolution console variable.

Return value

Virtual screen resolution (X, Y), in pixels.

void engine.render.setVREmulation ( int emulation ) #

Sets the VR-emulation mode.
Notice
To set the value via the console, use the render_vr_emulationconsole command.

Arguments

  • int emulation - VR-emulation mode:
    • 0 - disabled (by default).
    • 1 - HTC Vive emulation.
    • 2 - HTC Vive Pro emulation.
    • 3 - Oculus Rift emulation.

int engine.render.getVREmulation ( ) #

Returns the value indicating the current VR-emulation mode.
Notice
To get the value via the console, use the render_vr_emulationconsole variable.

Return value

VR-emulation mode:
  • 0 - disabled (by default).
  • 1 - HTC Vive emulation.
  • 2 - HTC Vive Pro emulation.
  • 3 - Oculus Rift emulation.

void engine.render.setWaterAnisotropy ( int anisotropy ) #

Sets water texture anisotropy level.
Notice
To set the value via the console, use the render_water_anisotropyconsole command.

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 engine.render.getWaterAnisotropy ( ) #

Returns current water texture anisotropy level.
Notice
To get the value via the console, use the render_water_anisotropyconsole variable.

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 engine.render.setWaterEnvironmentProbes ( int probes ) #

Enables or disables rendering of environment probes on the water surface.
Notice
To set the value via the console, use the render_water_environment_probesconsole command.

Arguments

  • int probes - 1 to enable rendering of environment probes on the water surface, 0 to disable it. The default value is 1.

int engine.render.isWaterEnvironmentProbes ( ) #

Returns a value indicating if rendering of environment probes on the water surface is enabled.
Notice
To get the value via the console, use the render_water_environment_probesconsole variable.

Return value

1 if rendering of environment probes on the water surface is enabled; otherwise, 0.

void engine.render.setWaterVoxelProbes ( int probes ) #

Enables or disables voxel probes for water rendering.
Notice
To set the value via the console, use the render_water_voxel_probesconsole command.

Arguments

  • int probes - 1 to enable voxel probes for water rendering, 0 to disable it. The default value is 1.

int engine.render.isWaterVoxelProbes ( ) #

Returns a value indicating if voxel probes are enabled for water rendering.
Notice
To get the value via the console, use the render_water_voxel_probesconsole variable.

Return value

1 if voxel probes are enabled for water rendering; otherwise, 0.

void engine.render.setWaterLights ( int lights ) #

Enables or disables rendering of lights on the water surface.
Notice
To set the value via the console, use the render_water_lightsconsole command.

Arguments

  • int lights - 1 to enable rendering of lights on the water surface, 0 to disable it. The default value is 1.

int engine.render.isWaterLights ( ) #

Returns a value indicating if rendering of lights on the water surface is enabled.
Notice
To get the value via the console, use the render_water_lightsconsole variable.

Return value

1 if rendering of lights on the water surface is enabled; otherwise, 0.

void engine.render.setWaterOpacityDepth ( int depth ) #

Enables or disables writing depth data for water to the opacity buffer.
Notice
To set the value via the console, use the render_water_opacity_depthconsole command.

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 engine.render.isWaterOpacityDepth ( ) #

Returns a value indicating if depth data for water is written to the opacity buffer.
Notice
To get the value via the console, use the render_water_opacity_depthconsole variable.

Return value

1 if depth data for water is written to the opacity buffer; otherwise, 0.

void engine.render.setWaterRefractionQuality ( int quality ) #

Sets the quality of water refraction.
Notice
To set the value via the console, use the render_water_refraction_quality console command.

Arguments

  • int quality - Refraction quality:
    • 0 - low quality.
    • 1 - medium quality.
    • 2 - high quality (by default).
    • 3 - ultra quality.

int engine.render.getWaterRefractionQuality ( ) #

Returns current quality of water refraction.
Notice
To get the value via the console, use the render_water_refraction_quality console variable.

Return value

Refraction quality:
  • 0 - low quality.
  • 1 - medium quality.
  • 2 - high quality (by default).
  • 3 - ultra quality.

void engine.render.setWaterShafts ( int shafts ) #

Enables or disables rendering of underwater shafts.
Notice
To set the value via the console, use the render_water_shaftsconsole command.

Arguments

  • int shafts - 1 to enable rendering of underwater shafts, 0 to disable it. The default value is 1.

int engine.render.isWaterShafts ( ) #

Returns a value indicating if rendering of underwater shafts is enabled.
Notice
To get the value via the console, use the render_water_shaftsconsole variable.

Return value

1 if rendering of underwater shafts is enabled; otherwise, 0.

void engine.render.setWaterShorelineWetness ( int wetness ) #

Enables or disables the wetness effect for objects near the shoreline.
Notice
To set the value via the console, use the render_water_shoreline_wetnessconsole command.

Arguments

  • int wetness - 1 to enable shoreline wetness, 0 to disable it. The default value is 1.

int engine.render.isWaterShorelineWetness ( ) #

Returns a value indicating if the wetness effect for objects near the shoreline is enabled.
Notice
To get the value via the console, use the render_water_shoreline_wetnessconsole variable.

Return value

1 if shoreline wetness is enabled; otherwise, 0.

void engine.render.setWaterSSR ( int waterssr ) #

Enables or disables the SSR (Screen Space Reflections) effect for water.
Notice
To set the value via the console, use the render_water_ssrconsole command.

Arguments

  • int waterssr - 1 to enable the SSR effect for water, 0 to disable.

int engine.render.isWaterSSR ( ) #

Returns the value indicating if the SSR (Screen Space Reflections) effect is enabled for water.
Notice
To get the value via the console, use the render_water_ssrconsole variable.

Return value

1 if the SSR effect is enabled for water; otherwise, 0.

void engine.render.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.
Notice
To set the value via the console, use the render_water_ssr_increased_accuracyconsole command.

Arguments

  • int accuracy - 1 to enable increased accuracy for the water SSR, 0 to disable. The default value is 0.

int engine.render.isWaterSSRIncreasedAccuracy ( ) #

Returns a value indicating if increased accuracy option is enabled for the water SSR (Screen Space Reflections).
Notice
To get the value via the console, use the render_water_ssr_increased_accuracyconsole variable.

Return value

1 if increased accuracy is enabled for the water SSR; otherwise, 0.

void engine.render.setWaterSSRQuality ( int quality ) #

Sets the resolution of water SSR (Screen Space Reflections).
Notice
To set the value via the console, use the render_water_ssr_qualityconsole command.

Arguments

  • int quality - Water SSR quality:
    • 0 - low quality.
    • 1 - medium quality (by default).
    • 2 - high quality.
    • 3 - ultra quality.

int engine.render.getWaterSSRQuality ( ) #

Returns the resolution of water SSR (Screen Space Reflections).
Notice
To get the value via the console, use the render_water_ssr_qualityconsole variable.

Return value

Water SSR quality:
  • 0 - low quality.
  • 1 - medium quality (by default).
  • 2 - high quality.
  • 3 - ultra quality.

Texture engine.render.getWhite2DArrayTexture ( ) #

Returns white 2D array texture.

Return value

White 2D array texture.

Texture engine.render.getWhite2DTexture ( ) #

Returns white 2D texture.

Return value

White 2D texture.

Texture engine.render.getWhite3DTexture ( ) #

Returns white 3D texture.

Return value

White 3D texture.

Texture engine.render.getWhiteCubeTexture ( ) #

Returns white Cube texture.

Return value

White Cube texture.

void engine.render.setWireframeColor ( vec4 color ) #

Sets the color for the wireframe.

Arguments

  • vec4 color - Wireframe color to be set.

vec4 engine.render.getWireframeColor ( ) #

Returns the color of the wireframe.

Return value

Wireframe color.

int engine.render.compressImage ( 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

  • 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 engine.render.compressTexture ( Texture texture, Image & destination, int quality = 1, int new_texture_format = -1, int use_mip_maps = -1 ) #

Compresses the given texture to the specified format.
Notice
Only 2d and 2d array textures can be compressed.

Arguments

  • Texture texture - Source texture to compress.
  • 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 engine.render.convertColorSpecularToMetalness ( vec4 & diffuse, vec4 & specular, vec4 & albedo, vec4 & shading ) #

Performs color conversion from the specular workflow (diffuse, specular) to the metalness workflow (albedo, shading).

Arguments

  • vec4 & diffuse - Input diffuse color.
  • vec4 & specular - Input specular color.
  • vec4 & albedo - Output albedo color.
  • vec4 & shading - Output shading color.

void engine.render.convertImageSpecularToMetalness ( Image diffuse, Image specular, Image & albedo, Image & shading ) #

Performs texture conversion from the specular workflow (diffuse, specular) to the metalness workflow (albedo, shading).

Arguments

  • Image diffuse - Input diffuse texture.
  • Image specular - Input specular texture.
  • Image & albedo - Output albedo texture.
  • Image & shading - Output shading texture.

int engine.render.createMipmapsCubeGGX ( Image image, float quality ) #

Generates mipmaps for a cubemap using GGX BRDF microfacet model.

Arguments

  • 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 engine.render.createShorelineDistanceField ( Image image, Image mask, int shoreline_radius, int blur_radius, int downsample_resolution ) #

Grabs a shoreline distance field texture with the specified parameters.

Arguments

  • Image image - Image to grab a shoreline texture to.
  • 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 engine.render.loadSettings ( string file ) #

Loads render settings from a given file.

Arguments

  • string file - Path to an XML file with desired settings.

Return value

1 if the settings are loaded successfully; otherwise, 0.

int engine.render.loadWorld ( Xml xml ) #

Loads render state from the Xml.

Arguments

  • Xml xml - Xml node.

Return value

1 if the state is loaded successfully; otherwise, 0.

void engine.render.renderImage2D ( Camera camera, 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

  • Camera camera - Camera to be used.
  • 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 engine.render.renderImage2D ( Camera camera, 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

  • Camera camera - Camera to be used.
  • 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 engine.render.renderImageCube ( Camera camera, Image image, int skip_flags ) #

Renders the scene into a cube map image in accordance with the specified parameters.

Arguments

  • Camera camera - Camera to be used.
  • 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 engine.render.renderImageCube ( Camera camera, 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

  • Camera camera - Camera to be used.
  • 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 engine.render.renderNodeImage2D ( Camera camera, Node node, Image image, int skip_flags, int light_usage, string 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

  • Camera camera - Camera to be used.
  • Node node - Node to be rendered.
  • 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.)
  • string 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 engine.render.renderNodeImage2D ( Camera camera, Node node, Image image, int width, int height, int hdr, int skip_flags, int light_usage, string 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

  • Camera camera - Camera to be used.
  • Node node - Node to be rendered.
  • 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).
  • string 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 engine.render.renderScreenMaterial ( string material_name ) #

Arguments

  • string material_name - Material name.

void engine.render.renderScreenMaterial ( string material_name, Texture color_texture ) #

Arguments

  • string material_name - Material name.
  • Texture color_texture - Color texture.

void engine.render.renderScreenMaterial ( string material_name, string texture_name, Texture texture ) #

Arguments

  • string material_name - Material.
  • string texture_name - Material texture name.
  • Texture texture - Texture.

void engine.render.renderProcedurals ( Vector<Material> materials ) #

Renders post-process materials with procedural textures (calculated on GPU using custom shaders) that are assigned to surfaces.

Arguments

  • Vector<Material> materials - Procedural materials list.

int engine.render.restoreState ( Stream stream ) #

Restores a render state from the stream.
Warning
This function is deprecated and will be removed in the next release.

Arguments

  • Stream stream - Stream to restore a state from.

Return value

1 if the state is restored successfully; otherwise, 0.

int engine.render.saveSettings ( string file ) #

Saves the current renderer settings to a given file.
Warning
This function is deprecated and will be removed in the next release.

Arguments

  • string file - Path to a target file.

Return value

1 if the settings are saved successfully; otherwise, 0.

int engine.render.saveState ( Stream stream ) #

Saves a render state into the stream.

Arguments

  • Stream stream - Stream to save a state into.

Return value

1 if the state is saved successfully; otherwise, 0.

int engine.render.saveWorld ( Xml xml ) #

Saves the render state into the given Xml node.

Arguments

  • Xml xml - Xml node.

Return value

1 if the state is saved successfully; otherwise, 0.

void engine.render.setEnvironmentHazeGradient ( int gradient ) #

Sets the environment haze gradient mode.
Notice
To set the haze gradient mode via the console, use the render_environment_haze_gradientconsole command.

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 engine.render.getEnvironmentHazeGradient ( ) #

Returns the current environment haze gradient mode.
Notice
To get the haze gradient mode via the console, use render_environment_haze_gradientconsole variable.

Return value

Haze gradient mode:
  • 0 for short distance range (e.g. near-surface haze).
  • 1 for long distance range (e.g. hazy mountains).

vec4 engine.render.getEnvironmentHazeColor ( ) #

Returns the current haze color for the preset that overlays the other ones.
Notice
This function will return color only if the RENDER_HAZE_SOLID mode is set via setEnvironmentHazeMode().
To get the haze color for the specific preset, use RenderEnvironmentPreset::getHazeColor().
Source code (UnigineScript)
// get a haze color for the preset that overlays the others
engine.render.getEnvironmentHazeColor();
// get a haze color for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getHazeColor();

Return value

Haze color.

float engine.render.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().
Source code (UnigineScript)
// get a haze density for the preset that overlays the others
engine.render.getEnvironmentHazeDensity();
// get a haze density for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getHazeDensity();

Return value

Haze density.

float engine.render.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().
Source code (UnigineScript)
// get a haze maximum visibility distance for the preset that overlays the others
engine.render.getEnvironmentHazeMaxDistance();
// get a haze maximum visibility distance for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getHazeMaxDistance();

Return value

Haze maximum visibility distance.

float engine.render.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().
Source code (UnigineScript)
// get a sky intensity for the preset that overlays the others
engine.render.getEnvironmentSkyIntensity();
// get a sky intensity for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getSkyIntensity();

Return value

Intensity value of the environment sky.

float engine.render.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().
Source code (UnigineScript)
// get a reflection intensity for the preset that overlays the others
engine.render.getEnvironmentReflectionIntensity();
// get a reflection intensity for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getReflectionIntensity();

Return value

The intensity value of the environment reflections.

float engine.render.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().
Source code (UnigineScript)
// get an ambient intensity for the preset that overlays the others
engine.render.getEnvironmentAmbientIntensity();
// get an ambient intensity for the second environment preset
RenderEnvironmentPreset preset = engine.render.getEnvironmentPreset(1);
preset.getAmbientIntensity();

Return value

The intensity value of environment ambient lighting. The value can be greater than 1.0f.

RenderEnvironmentPreset engine.render.getEnvironmentPreset ( int num ) #

Returns the environment preset of the given number.
Source code (UnigineScript)
// get the second environment preset
RenderEnvironmentPreset preset = engine.render.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 engine.render.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 engine.render.isFXAA ( ) #

Returns the value indicating if FXAA (post-process anti-aliasing) is enabled.

Return value

1 if FXAA is enabled; otherwise, 0.

void engine.render.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 engine.render.isTAA ( ) #

Returns the value indicating if TAA is enabled.

Return value

1 if TAA is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.setTAA ( int taa ) #

Toggles TAA on and off.

Arguments

  • int taa - 1 to enable TAA, 0 to disable it.

void engine.render.setFXAA ( int fxaa ) #

Toggles FXAA (post-process anti-aliasing) on and off.

Arguments

  • int fxaa - 1 to enable FXAA, 0 to disable it.

float engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.isSSBevel ( ) #

Returns the value indicating if the screen-space bevels are enabled.

Return value

1 if the effect is enabled; otherwise, 0.

float engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
    Notice
    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().
Notice
To set the camera mode via the console, use the render_camera_modeconsole command.

Arguments

  • int mode - 0 for the classic camera mode; 1 for the physically-based camera mode.

int engine.render.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.
    Notice
    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().
Notice
To get the current camera mode via the console, use the render_camera_modeconsole variable.

Return value

0 if the classic camera mode is set; 1 if the physically-based camera mode is set.

void engine.render.setISO ( float iso ) #

Sets an ISO for static exposure calculation.
Notice
To set the ISO value via the console, use the render_isoconsole command.

Arguments

  • float iso - ISO value.

float engine.render.getISO ( ) #

Returns the ISO used for static exposure calculation.
Notice
To get the current ISO value via the console, use the render_isoconsole variable.

Return value

ISO value.

void engine.render.setShutterSpeed ( float speed ) #

Sets a shutter speed for static exposure calculation.
Notice
To set the shutter speed value via the console, use the render_shutter_speedconsole command.

Arguments

  • float speed - Shutter speed.

float engine.render.getShutterSpeed ( ) #

Sets the shutter speed used for static exposure calculation.
Notice
To get the current shutter speed value via the console, use the render_shutter_speedconsole variable.

Return value

Shutter speed.

void engine.render.setFStop ( float fstop ) #

Sets an F-stop value for static exposure calculation.
Notice
To set the F-stop value via the console, use the render_f_stopconsole command.

Arguments

  • float fstop - F-stop value.

float engine.render.getFStop ( ) #

Returns the F-stop value used for static exposure calculation.
Notice
To get the current F-stop value via the console, use the render_f_stopconsole variable.

Return value

F-stop value.

void engine.render.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.
Notice
This option can be used to gain performance for well optimized scenes using LODs and having a low-to-medium number of triangles in case of GPU bottlenecks. In other cases (heavy CAD models, large number of triangles and CPU bottlenecks) it may reduce performance, so it is recommended to use profiling tools to make sure that a positive effect is obtained.
Notice
To set the value via the console, use the render_depth_pre_passconsole command.

Arguments

  • int pass - 1 to enable depth pre-pass, 0 to disable it. The default value is 0.

int engine.render.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.
Notice
This option can be used to gain performance for well optimized scenes using LODs and having a low-to-medium number of triangles in case of GPU bottlenecks. In other cases (heavy CAD models, large number of triangles and CPU bottlenecks) it may reduce performance, so it is recommended to use profiling tools to make sure that a positive effect is obtained.
Notice
To get the value via the console, use the render_depth_pre_passconsole variable.

Return value

1 if depth pre-pass rendering is enabled; otherwise, 0.

void engine.render.setStereoHiddenArea ( int area ) #

Sets culling mode for pixels, that are not visible in VR mode. This parameter is used for performance optimization.
Notice
To set the value via the console, use the render_stereo_hidden_areaconsole command.

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.
      Notice
      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 engine.render.getStereoHiddenArea ( ) #

Returns the current culling mode for pixels, that are not visible in VR mode. This parameter is used for performance optimization.
Notice
To get the value via the console, use the render_stereo_hidden_areaconsole variable.

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.
    Notice
    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 engine.render.setStereoHiddenAreaExposureTransform ( 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

  • 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.
      Notice
      These components are ignored when hidden area culling mode is set to 2
    All components are specified within the [0.0f, 1.0f] range.

vec4 engine.render.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.
    Notice
    These components are ignored when hidden area culling mode is set to 2
All components are within the [0.0f, 1.0f] range.

void engine.render.setStereoHiddenAreaTransform ( 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.
Notice

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

  • 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.
      Notice
      These components are ignored when hidden area culling mode is set to 2

vec4 engine.render.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.
Notice

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 engine.render.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.
Notice
Reprojection does not give an x2 performance gain as there are a lot of other things to be rendered in addition to the ones rendered per-eye (such as shadow maps etc.). Moreover, in case of a CPU bottleneck, reprojection won't give any gain at all.

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 engine.render.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.
Notice
Reprojection does not give an x2 performance gain as there are a lot of other things to be rendered in addition to the ones rendered per-eye (such as shadow maps etc.). Moreover, in case of a CPU bottleneck, reprojection won't give any gain at all.

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 engine.render.setStereoReprojectionFixBlur ( int blur ) #

Sets the value indicating if improved blur reduction is enabled for screen during stereo reprojection.
Notice
This option can be disabled, when possible, to gain some performance.
Notice
To set the value via the console, use the render_stereo_reprojection_fix_blurconsole command.

Arguments

  • int blur - 1 to enable improved blur reduction for screen during stereo reprojection, 0 to disable it. The default value is 1.

int engine.render.isStereoReprojectionFixBlur ( ) #

Returns the value indicating if improved blur reduction is enabled for screen during stereo reprojection.
Notice
This option can be disabled, when possible, to gain some performance.
Notice
To get the value via the console, use the render_stereo_reprojection_fix_blurconsole variable.

Return value

1 if improved blur reduction is enabled for screen during stereo reprojection; otherwise, 0.

void engine.render.setStereoReprojectionBuffersFixBlur ( int blur ) #

Sets the value indicating if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection.
Notice
This option can be disabled, when possible, to gain some performance.
Notice
To set the value via the console, use the render_stereo_reprojection_buffers_fix_blurconsole command.

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 engine.render.isStereoReprojectionBuffersFixBlur ( ) #

Returns the value indicating if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection.
Notice
This option can be disabled, when possible, to gain some performance.
Notice
To get the value via the console, use the render_stereo_reprojection_buffers_fix_blurconsole variable.

Return value

1 if improved blur reduction is enabled for buffers (SSAO, SSR, etc.) during stereo reprojection; otherwise, 0.

void engine.render.setStereoReprojectionThreshold ( float threshold ) #

Sets the current threshold value to be used for stereo reprojection, when the fast reprojection mode (2) is used.
Notice
To set the value via the console, use the render_stereo_reprojection_thresholdconsole command.

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.
    The default value is 1.0f.

float engine.render.getStereoReprojectionThreshold ( ) #

Returns the current threshold value used for stereo reprojection, when the fast reprojection mode (2) is used.
Notice
To get the value via the console, use the render_stereo_reprojection_thresholdconsole variable.

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.
The default value is 1.0f.

void engine.render.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 engine.render.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 engine.render.setWhiteBalance ( int balance ) #

Sets a value indicating if automatic white balance correction is enabled.
Notice
To set the value via the console, use the render_white_balanceconsole command.

Arguments

  • int balance - 1 to enable automatic white balance correction, 0 to disable it. The default value is 1.

int engine.render.isWhiteBalance ( ) #

Returns a value indicating if automatic white balance correction is enabled.
Notice
To get the value via the console, use the render_white_balanceconsole variable.

Return value

1 if automatic white balance correction is enabled; otherwise, 0.

void engine.render.setWhiteBalanceIntensity ( float intensity ) #

Sets the value of white balance correction intensity.
Notice
To set the value via the console, use the render_white_balance_intensityconsole command.

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.
    Notice
    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 engine.render.getWhiteBalanceIntensity ( ) #

Returns the current value of white balance correction intensity.
Notice
To get the value via the console, use the render_white_balance_intensityconsole variable.

Return value

Current white balance correction intensity value in the range [0.0f, 1.0f]. The default value is 0.3f.

void engine.render.setWhiteBalanceAdaptationTime ( float time ) #

Sets the time for the camera to adjust white balance.
Notice
To set the value via the console, use the render_white_balance_adaptation_timeconsole command.

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.
    Notice
    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 engine.render.getWhiteBalanceAdaptationTime ( ) #

Returns the current the time set for the camera to adjust white balance.
Notice
To get the value via the console, use the render_white_balance_adaptation_timeconsole variable.

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 engine.render.setSSDirt ( int dirt ) #

Sets the value indicating if the Screen-Space Dirt (SSDirt) effect is enabled.
Notice
To enable/disable the effect via the Console, use the render_ssdirtconsole command.

Arguments

  • int dirt - 1 to enable the SSDirt effect, 0 to disable it.

int engine.render.isSSDirt ( ) #

Returns the value indicating if the Screen-Space Dirt (SSDirt) effect is enabled.
Notice
To check whether the effect is enabled via the Console, use the render_ssdirtconsole variable.

Return value

1 if the SSDirt effect is enabled; otherwise, 0.

void engine.render.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).
Notice
This parameter affects both, concave and convex areas.

Arguments

  • float bias - Angle bias value to be set in the range [0.0f; 1.0f]. The default value is 0.35f.

float engine.render.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).
Notice
This parameter affects both, concave and convex areas.

Return value

Angle bias value in the range [0.0f; 1.0f].

void engine.render.setSSDirtCavityAlbedoTextureName ( string 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

  • string name - Name of the albedo texture to be used for cavities.

string engine.render.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 engine.render.setSSDirtCavityColor ( 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

  • vec4 color - Color multiplier for the Albedo texture used for cavities. By default, the color is white.

vec4 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setSSDirtCavityShadingTextureName ( string 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

  • string name - Name of the shading texture to be used for cavities.

string engine.render.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 engine.render.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 engine.render.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 engine.render.setSSDirtConvexityAlbedoTextureName ( string 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

  • string name - Name of the albedo texture to be used for convexities.

string engine.render.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 engine.render.setSSDirtConvexityColor ( 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

  • vec4 color - Color multiplier for the Albedo texture used for convexities. By default, the color is white.

vec4 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setSSDirtConvexityShadingTextureName ( string 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

  • string name - Name of the shading texture to be used for convexities.

string engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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.
    The default value is 1.0f.

float engine.render.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 engine.render.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).
The SSDirt effect must be enabled (see the setSSDirt() method).

Arguments

  • float perspective - Perspective value to be set in the range [0.0f, 1.0f]. The default value is 0.02f

float engine.render.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).
The SSDirt effect must be enabled (see the setSSDirt() method).

Return value

Current perspective value in the range [0.0f, 1.0f]. The default value is 0.02f

void engine.render.setSSDirtQuality ( int quality ) #

Sets the quality for the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).
Notice
This parameter significantly affects performance, so choose it reasonably.

Arguments

  • int quality - SSDirt effect quality to be set:
    • 0 - low
    • 1 - medium
    • 2 - high (by default)
    • 3 - ultra

int engine.render.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 engine.render.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 engine.render.getSSDirtRadius ( ) #

Returns the current size of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).

void engine.render.setSSDirtResolution ( int resolution ) #

Sets the resolution of the SSDirt effect. The SSDirt effect must be enabled (see the setSSDirt() method).
Notice
This parameter significantly affects performance, so choose it reasonably.

Arguments

  • int resolution - Resolution of the SSDirt effect to be set:
    • 0 - quarter
    • 1 - half (by default)
    • 2 - full

int engine.render.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 engine.render.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 engine.render.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 engine.render.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).
Notice
To set the value via the Console, use the render_latencyconsole command.

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
    Notice
    Values 1-3 are available for DirectX only.

int engine.render.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).
Notice
To get the value via the Console, use the render_latencyconsole variable.

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
Notice
Values 1-3 are available for DirectX only.

void engine.render.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.
Notice
To set the value via the Console, use the render_streaming_modeconsole command.

Arguments

int engine.render.getStreamingMode ( ) #

Returns the current streaming mode used for textures and meshes.
Notice
To get the value via the Console, use the render_streaming_modeconsole variable.

Return value

Current streaming mode: one of the RENDER_STREAMING_* variables.

void engine.render.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 engine.render.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 engine.render.setStreamingMaxThreads ( int threads ) #

Set the maximum number of threads used for streaming.
Notice
To set the value via the Console, use the render_streaming_max_threadsconsole command.

Arguments

  • int threads - Maximum number of threads to be used for streaming, within the [1; 256] range. The default value is 1.
    Notice
    Higher number of threads results in faster streaming, but may cause spikes in case of excessive consumption of GPU resources.

int engine.render.getStreamingMaxThreads ( ) #

Returns the maximum number of threads used for streaming.
Notice
To get the value via the Console, use the render_streaming_max_threadsconsole variable.

Return value

Current maximum number of threads used for streaming, within the [1; 256] range. The default value is 1.
Notice
Higher number of threads results in faster streaming, but may cause spikes in case of excessive consumption of GPU resources.

void engine.render.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 engine.render.getStreamingDestroyDuration ( ) #

Returns the current resource cleanup interval.

Return value

Resource cleanup interval, in number of frames, within the [0; 300] range.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.setShadersPreload ( int preload ) #

Sets a value indicating if all shaders are compiled and loaded to RAM every time the world is loaded.
Notice
Pre-loading shaders results in significant memory consumption. It is recommended to use pre-generated shaders cache instead when possible (see the shaders_create command). In this case necessary shaders are loaded from cache to RAM on demand.

Arguments

  • int preload - 1 to enable pre-loading for shaders, 0 to disable it. The default value is 0.

int engine.render.isShadersPreload ( ) #

Returns a value indicating if all shaders are compiled and loaded to RAM every time the world is loaded.
Notice
Pre-loading shaders results in significant memory consumption. It is recommended to use pre-generated shaders cache instead when possible (see the shaders_create command). In this case necessary shaders are loaded from cache to RAM on demand.

Return value

1 if pre-loading for shaders is enabled; otherwise, 0.

void engine.render.setFPSStabilization ( int stabilization ) #

Sets the value indicating if the framerate stabilization is enabled.
Notice
To enable/disable this feature via the Console, use the render_fps_stabilizationconsole command.

Arguments

  • int stabilization - 1 to enable framerate stabilization, 0 to disable it.

int engine.render.isFPSStabilization ( ) #

Returns a value indicating if framerate stabilization is enabled.

Return value

1 if framerate stabilization is enabled; otherwise, 0.

void engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.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 engine.render.destroyCacheTexture ( 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

  • UGUID guid - Texture file GUID.

void engine.render.createCacheTexture ( UGUID guid ) #

Generates cache for the texture with the specified GUID.
Notice
Texture cache generated by this method is incomplete, only images are created, as all metadata (flags, etc.) is stored in materials.

Arguments

  • UGUID guid - Texture file GUID.

void engine.render.destroyCacheTextures ( ) #

Clears texture cache (images and metadata) stored on disk. All files in the data/.cache_textures will be removed.

void engine.render.unloadCacheTextures ( ) #

Unloads texture cache from the memory. This method does not delete files in the data/.cache_textures.

void engine.render.createCacheTextures ( ) #

Generates texture cache for all textures used in the project.
Notice
Texture cache generated by this method is incomplete, only images are created, as all metadata (flags, etc.) is stored in materials.

void engine.render.loadCacheTextures ( ) #

Loads texture cache from the disk. Texture cache always remains in memory after loading.

void engine.render.setTranslucentColor ( 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

  • vec4 color - Color to be used for translucent objects globally. By default, the color is white.

vec4 engine.render.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 engine.render.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.

float engine.render.getShadowDistanceScale ( ) #

Returns the current the global shadow distance scale multiplier. This option allows a developer to easily increase or decrease shadows rendering performance by changing the scale.

Return value

Current global shadow distance scale multiplier in [0.0f; inf] range.

void engine.render.addScriptableMaterial ( Material material ) #

Adds a new global scriptable material. To apply a scriptable material per-camera or per-player, use the addScriptableMaterial() method of the Camera class or the same method of the Player class respectively. The order of execution for scripts assigned to scriptable materials is defined by material's number in the list of materials applied globally.
Notice
Scriptable materials applied globally have their expressions executed before the ones that are applied per-camera or per-player.

Arguments

  • Material material - Scriptable material to be applied globally.

void engine.render.removeScriptableMaterial ( int num ) #

Removes the global scriptable material with the specified number.

Arguments

int engine.render.getNumScriptableMaterials ( ) #

Returns the total number of scriptable materials applied globally.

Return value

Total number of scriptable materials applied globally.

int engine.render.findScriptableMaterial ( Material material ) #

Returns the number of the specified scriptable material applied globally. This number determines the order in which the assigned expressions are executed.
Notice
Scriptable materials applied globally have their expressions executed before the ones that are applied per-camera or per-player.

Arguments

  • Material material - Scriptable material for which a number is to be found.

Return value

Scriptable material number in the range from 0 to the total number of scriptable materials, or -1 if the specified material was not found.

void engine.render.setScriptableMaterial ( int num, Material material ) #

Replaces the scriptable material with the specified number with the new scriptable material specified. The number of material determines the order in which the expressions assigned to it are executed.
Notice
Scriptable materials applied globally have their expressions executed before the ones that are applied per-camera or per-player.

Arguments

  • int num - Scriptable material number in the range from 0 to the total number of scriptable materials.
  • Material material - New scriptable material to replace the one with the specified number.

Material engine.render.getScriptableMaterial ( int num ) #

Returns a scriptable material applied globally by its number.

Arguments

Return value

Scriptable material applied globally with the specified number.

void engine.render.setScriptableMaterialEnabled ( int num, int enabled ) #

Enables or disables the scriptable material with the specified number. When a material is disabled (inactive), the scripts attached to it are not executed.

Arguments

  • int num - Scriptable material number in the range from 0 to the total number of scriptable materials.
  • int enabled - 1 to enable the scriptable material with the specified number, 0 to disable it.

int engine.render.getScriptableMaterialEnabled ( int num ) #

Returns a value indicating if the scriptable material with the specified number is enabled (active). When a material is disabled (inactive), the scripts attached to it are not executed.

Arguments

Return value

1 if the scriptable material with the specified number is enabled; otherwise, 0.

void engine.render.swapScriptableMaterials ( int num_0, int num_1 ) #

Swaps two scriptable materials with specified numbers. The number of material determines the order in which the expressions assigned to it are executed.
Notice
Scriptable materials applied globally have their expressions executed before the ones that are applied per-camera or per-player.

Arguments

void engine.render.clearScriptableMaterials ( ) #

Clears all global scriptable materials.

int engine.render.getHDRTextureFormat ( ) #

Returns the currently used HDR texture format.

Return value

Current HDR texture format. One of the following values:

Texture engine.render.getTemporaryTexture ( int width, int height, int format, int flags = 0, string name = 0 ) #

Allocates a temporary render texture with the specified width, height, format, and flags. This function can be used when you need a quick render texture to perform some temporary calculations. Release it using releaseTemporaryTexture() as soon as you're done with it, so another call can start reusing it, if necessary. In any case, such texture shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render textures, so a call to this method most often just returns an already created one (if the size and format match). These temporary textures are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render texture for each blit, instead of getting one or two render textures upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary texture obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

It also automatically gives names to resources, which can be used for identification in debug.

Arguments

  • int width - Width of the texture, in pixels.
  • int height - Height of the texture, in pixels.
  • int format - Texture format: one of the TEXTURE_FORMAT_* values.
  • int flags - Texture flags.
  • string name - Name to be used for this temporary texture (optional).

Return value

Temporary texture.

Texture engine.render.getTemporaryTexture ( Texture texture ) #

Allocates a temporary render texture with the specified width, height, format, and flags. This function can be used when you need a quick render texture to perform some temporary calculations. Release it using releaseTemporaryTexture() as soon as you're done with it, so another call can start reusing it, if necessary. In any case, such texture shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render textures, so a call to this method most often just returns an already created one (if the size and format match). These temporary textures are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render texture for each blit, instead of getting one or two render textures upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary texture obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

It also automatically gives names to resources, which can be used for identification in debug.

Arguments

  • Texture texture - Source texture for which a temporary texture is to be allocated in the pool.

Return value

Temporary texture.

Texture engine.render.getTemporaryTexture ( Texture texture, string name = 0 ) #

Allocates a temporary render texture for the specified source texture (using all its parameters: resolution, flags, etc.). This function can be used when you need a quick render texture to perform some temporary calculations. Release it using releaseTemporaryTexture() as soon as you're done with it, so another call can start reusing it, if necessary. In any case, such texture shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render textures, so a call to this method most often just returns an already created one (if the size and format match). These temporary textures are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render texture for each blit, instead of getting one or two render textures upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary texture obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

It also automatically gives names to resources, which can be used for identification in debug.

Arguments

  • Texture texture - Source texture for which a temporary texture is to be allocated in the pool.
  • string name - Name to be used for this temporary texture (optional).

Return value

Temporary texture.

Texture engine.render.getTemporary2DArrayTexture ( int width, int height, int depth, int format, int flags = 0, string name = 0 ) #

Allocates a temporary 2D array texture with the specified width, height, number of layers, format, and flags. This function can be used when you need a quick render texture to perform some temporary calculations. Release it using releaseTemporaryTexture() as soon as you're done with it, so another call can start reusing it, if necessary. In any case, such texture shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render textures, so a call to this method most often just returns an already created one (if the size and format match). These temporary textures are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render texture for each blit, instead of getting one or two render textures upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary texture obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

Arguments

  • int width - Width of the 2D array texture, in pixels.
  • int height - Height of the 2D array texture, in pixels.
  • int depth - Number of layers in the 2D array texture.
  • int format - Texture format: one of the TEXTURE_FORMAT_* values.
  • int flags - Texture flags.
  • string name - Name to be used for this temporary 2D array texture (optional).

Return value

Temporary 2D array texture.

Texture engine.render.getTemporary3DTexture ( int width, int height, int depth, int format, int flags = 0, string name = 0 ) #

Allocates a temporary 3D texture with the specified width, height, depth, format, and flags. This function can be used when you need a quick render texture to perform some temporary calculations. Release it using releaseTemporaryTexture() as soon as you're done with it, so another call can start reusing it, if necessary. In any case, such texture shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render textures, so a call to this method most often just returns an already created one (if the size and format match). These temporary textures are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render texture for each blit, instead of getting one or two render textures upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary texture obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

Arguments

  • int width - Width of the 3D texture, in pixels.
  • int height - Height of the 3D texture, in pixels.
  • int depth - Depth of the 3D texture, in pixels.
  • int format - Texture format: one of the TEXTURE_FORMAT_* values.
  • int flags - Texture flags.
  • string name - Name to be used for this temporary 3D texture (optional).

Return value

Temporary 3D texture.

void engine.render.releaseTemporaryTexture ( Texture texture ) #

Releases the temporary texture previously obtained via getTemporaryTexture(), getTemporary2DArrayTexture(), or getTemporary3DTexture() method and returns it to the pool.

Arguments

  • Texture texture - Temporary texture or texture array to be returned to the pool.

RenderTarget engine.render.getTemporaryRenderTarget ( ) #

Allocates a temporary render target. This function can be used when you need a quick render target to perform some temporary calculations. Release it using releaseTemporaryRenderTarget() as soon as you're done with it, so another call can start reusing it if necessary. In any case such render target shall be released automatically in the next frame.

UNIGINE keeps an internal pool of temporary render targets, so a call to this method most often just returns an already created one (if the size and format matches). These temporary render targets are actually destroyed when they aren't used for a couple of frames.

If you are doing a series of post-processing "blits", it's best for performance to get and release a temporary render targets for each blit, instead of getting one or two render targets upfront and reusing them.

Notice
You can't depend on any particular contents of a temporary render target obtained from this function: it might be garbage, or it might be cleared to some color, depending on the platform.

Return value

Temporary render target.

void engine.render.releaseTemporaryRenderTarget ( RenderTarget render_target ) #

Releases the temporary render target previously obtained via getTemporaryRenderTarget() method and returns it to the pool.

Arguments

  • RenderTarget render_target - Temporary render target to be returned to the pool.

void engine.render.setLightsInterleavedSamples ( int samples ) #

Sets one of the two interleaved rendering modes defining the number of pixels to be skipped when rendering lights during the deferred pass with subsequent reconstruction of neighboring pixels using the data from previous frames.

Arguments

  • int samples - Interleaved rendering mode for lighting during the deferred pass to be set, one of the following:
    • 0 - half of all pixels is rendered skipping each second line (1 x 2)
    • 1 - quarter of all pixels is rendered skipping each second line and row (2 x 2)

int engine.render.getLightsInterleavedSamples ( ) #

Returns the current interleaved rendering mode defining the number of pixels to be skipped when rendering lights during the deferred pass with subsequent reconstruction of neighboring pixels using the data from previous frames.

Return value

Current interleaved rendering mode for lighting during the deferred pass, one of the following:
  • 0 - half of all pixels is rendered skipping each second line (1 x 2)
  • 1 - quarter of all pixels is rendered skipping each second line and row (2 x 2)

void engine.render.setSSAODenoiseQuality ( int quality ) #

Sets the noise reduction quality level for the SSAO (Screen-Space Ambient Occlusion) effect defining the number of samples used.

Arguments

  • int quality - Noise reduction quality to be set:
    • 0 - Low
    • 1 - Medium (by default)
    • 2 - High
    • 3 - Ultra
    Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

int engine.render.getSSAODenoiseQuality ( ) #

Returns the current noise reduction quality level for the SSAO (Screen-Space Ambient Occlusion) effect defining the number of samples used.

Return value

Current noise reduction quality:
  • 0 - Low
  • 1 - Medium (by default)
  • 2 - High
  • 3 - Ultra
Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

void engine.render.setSSGIDenoiseQuality ( int quality ) #

Sets the noise reduction quality level for the SSGI (Screen-Space Global Illumination) effect defining the number of samples used.

Arguments

  • int quality - Noise reduction quality to be set:
    • 0 - Low
    • 1 - Medium (by default)
    • 2 - High
    • 3 - Ultra
    Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

int engine.render.getSSGIDenoiseQuality ( ) #

Returns the current noise reduction quality level for the SSGI (Screen-Space Global Illumination) effect defining the number of samples used.

Return value

Current noise reduction quality:
  • 0 - Low
  • 1 - Medium (by default)
  • 2 - High
  • 3 - Ultra
Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

void engine.render.setSSGIDenoiseIntensity ( float intensity ) #

Sets the noise reduction intensity for the SSGI (Screen Space Global Illumination) effect.

Arguments

  • float intensity - Noise reduction intensity value in range [0.0f; 1.0f] to be set. Higher values provide a less noisy, but more blurred result. The default value is 0.2f.

float engine.render.getSSGIDenoiseIntensity ( ) #

Returns the current noise reduction intensity for the SSGI (Screen Space Global Illumination) effect.

Return value

Noise reduction intensity value in range [0.0f; 1.0f]. Higher values provide a less noisy, but more blurred result. The default value is 0.2f.

void engine.render.setSSGIDenoiseGaussianSigma ( float sigma ) #

Sets the sigma parameter of Gaussian blur used for noise reduction for the SSGI (Screen Space Global Illumination) effect. This parameter controls the amount of blur applied.

Arguments

  • float sigma - Gaussian blur sigma parameter value in range [0.0f; 100.0f] to be set. The default value is 10.0f.

float engine.render.getSSGIDenoiseGaussianSigma ( ) #

Returns the current value of the sigma parameter of Gaussian blur used for noise reduction for the SSGI (Screen Space Global Illumination) effect. This parameter controls the amount of blur applied.

Return value

Gaussian blur sigma parameter value in range [0.0f; 100.0f]. The default value is 10.0f.

void engine.render.setSSGIDenoiseThreshold ( float threshold ) #

Sets the threshold value for color difference of neighboring pixels used for noise reduction for the SSGI (Screen Space Global Illumination) effect: blur is applied when the color difference is less than the threshold value.
Notice
Setting too high values result in blurring the whole image.

Arguments

  • float threshold - Threshold value for color difference of neighboring pixels in range [0.0f; 1.0f] to be set. The default value is 0.1f.

float engine.render.getSSGIDenoiseThreshold ( ) #

Returns the current threshold value for color difference of neighboring pixels used for noise reduction for the SSGI (Screen Space Global Illumination) effect: blur is applied when the color difference is less than the threshold value.
Notice
Setting too high values result in blurring the whole image.

Return value

Threshold value for color difference of neighboring pixels in range [0.0f; 1.0f]. The default value is 0.1f.

void engine.render.setSSGIDenoiseRadius ( int radius ) #

Sets the radius of the area to be affected by noise reduction for the SSGI (Screen Space Global Illumination) effect.

Arguments

  • int radius - Radius to be affected by noise reduction, an integer value in range [1; 3] to be set. The default value is 1.

int engine.render.getSSGIDenoiseRadius ( ) #

Returns the current radius of the area to be affected by noise reduction for the SSGI (Screen Space Global Illumination) effect.

Return value

Radius to be affected by noise reduction, an integer value in range [1; 3]. The default value is 1.

void engine.render.setSSGIColorClampingIntensity ( float intensity ) #

Sets the intensity of TAA color clamping at zero pixel velocity for the SSGI (Screen Space Global Illumination) effect.

Arguments

  • float intensity - Intensity of TAA color clamping at zero pixel velocity in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSGI Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

float engine.render.getSSGIColorClampingIntensity ( ) #

Returns the current intensity of TAA color clamping at zero pixel velocity for the SSGI (Screen Space Global Illumination) effect.

Return value

Intensity of TAA color clamping at zero pixel velocity in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSGI Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

void engine.render.setSSGIColorClampingVelocityThreshold ( float threshold ) #

Sets the sensitivity of TAA color clamping for the SSGI (Screen Space Global Illumination) effect to pixel velocity change. This parameter is used to reduce ghosting effect for lower Color Clamping Intensity values: it automatically increases clamping intensity for higher velocities, and disables clamping for low velocity values.

Arguments

  • float threshold - Sensitivity of TAA color clamping for the SSGI (Screen Space Global Illumination) effect to pixel velocity change in range [0.0f; 1.0f] to be set. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSGI Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

float engine.render.getSSGIColorClampingVelocityThreshold ( ) #

Returns the current sensitivity of TAA color clamping for the SSGI (Screen Space Global Illumination) effect to pixel velocity change. This parameter is used to reduce ghosting effect for lower Color Clamping Intensity values: it automatically increases clamping intensity for higher velocities, and disables clamping for low velocity values.

Return value

Sensitivity of TAA color clamping for the SSGI (Screen Space Global Illumination) effect to pixel velocity change in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSGI Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

void engine.render.setBentNormalDenoiseQuality ( int quality ) #

Sets the noise reduction quality level for bent normals calculation defining the number of samples used.

Arguments

  • int quality - Noise reduction quality to be set:
    • 0 - Low
    • 1 - Medium (by default)
    • 2 - High
    • 3 - Ultra
    Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

int engine.render.getBentNormalDenoiseQuality ( ) #

Returns the current noise reduction quality level for bent normals calculation defining the number of samples used.

Return value

Current noise reduction quality:
  • 0 - Low
  • 1 - Medium (by default)
  • 2 - High
  • 3 - Ultra
Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

void engine.render.setSSRDenoiseQuality ( int quality ) #

Sets the noise reduction quality level for the SSR (Screen-Space Reflections) effect defining the number of samples used.

Arguments

  • int quality - Noise reduction quality to be set:
    • 0 - Low
    • 1 - Medium (by default)
    • 2 - High
    • 3 - Ultra
    Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

int engine.render.getSSRDenoiseQuality ( ) #

Returns the current noise reduction quality level for the SSR (Screen-Space Reflections) effect defining the number of samples used.

Return value

Current noise reduction quality:
  • 0 - Low
  • 1 - Medium (by default)
  • 2 - High
  • 3 - Ultra
Higher values provide better reduction, but for a performance cost (choosing Medium is enough in most cases).

void engine.render.setSSRDenoiseIntensity ( float intensity ) #

Sets the noise reduction intensity for the SSR (Screen-Space Reflections) effect.

Arguments

  • float intensity - Noise reduction intensity value in range [0.0f; 1.0f] to be set. Higher values provide a less noisy, but more blurred result. The default value is 0.2f.

float engine.render.getSSRDenoiseIntensity ( ) #

Returns the current noise reduction intensity for the SSR (Screen-Space Reflections) effect.

Return value

Noise reduction intensity value in range [0.0f; 1.0f] to be set. Higher values provide a less noisy, but more blurred result. The default value is 0.2f.

void engine.render.setSSRDenoiseGaussianSigma ( float sigma ) #

Sets the sigma parameter of Gaussian blur used for noise reduction for the SSR (Screen-Space Reflections) effect. This parameter controls the amount of blur applied.

Arguments

  • float sigma - Gaussian blur sigma parameter value in range [0.0f; 100.0f] to be set. The default value is 10.0f.

float engine.render.getSSRDenoiseGaussianSigma ( ) #

Returns the current value of the sigma parameter of Gaussian blur used for noise reduction for the SSR (Screen-Space Reflections) effect. This parameter controls the amount of blur applied.

Return value

Gaussian blur sigma parameter value in range [0.0f; 100.0f]. The default value is 10.0f.

void engine.render.setSSRDenoiseThreshold ( float threshold ) #

Sets the threshold value for color difference of neighboring pixels used for noise reduction for the SSR (Screen-Space Reflections) effect: blur is applied when the color difference is less than the threshold value.
Notice
Setting too high values result in blurring the whole image.

Arguments

  • float threshold - Threshold value for color difference of neighboring pixels in range [0.0f; 1.0f] to be set. The default value is 0.1f.

float engine.render.getSSRDenoiseThreshold ( ) #

Returns the current threshold value for color difference of neighboring pixels used for noise reduction for the SSR (Screen-Space Reflections) effect: blur is applied when the color difference is less than the threshold value.
Notice
Setting too high values result in blurring the whole image.

Return value

Threshold value for color difference of neighboring pixels in range [0.0f; 1.0f]. The default value is 0.1f.

void engine.render.setSSRDenoiseRadius ( int radius ) #

Sets the radius of the area to be affected by noise reduction for the SSR (Screen-Space Reflections) effect.

Arguments

  • int radius - Radius to be affected by noise reduction, an integer value in range [1; 3] to be set. The default value is 1.

int engine.render.getSSRDenoiseRadius ( ) #

Returns the current radius of the area to be affected by noise reduction for the SSR (Screen-Space Reflections) effect.

Return value

Radius to be affected by noise reduction, an integer value in range [1; 3]. The default value is 1.

void engine.render.setSSRColorClampingIntensity ( float intensity ) #

Sets the intensity of TAA color clamping at zero pixel velocity for the SSR (Screen-Space Reflections) effect.

Arguments

  • float intensity - Intensity of TAA color clamping at zero pixel velocity in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSR Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

float engine.render.getSSRColorClampingIntensity ( ) #

Returns the current intensity of TAA color clamping at zero pixel velocity for the SSR (Screen-Space Reflections) effect.

Return value

Intensity of TAA color clamping at zero pixel velocity in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSR Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

void engine.render.setSSRColorClampingVelocityThreshold ( float threshold ) #

Sets the sensitivity of TAA color clamping for the SSR (Screen-Space Reflections) effect to pixel velocity change. This parameter is used to reduce ghosting effect for lower Color Clamping Intensity values: it automatically increases clamping intensity for higher velocities, and disables clamping for low velocity values.

Arguments

  • float threshold - Sensitivity of TAA color clamping for the SSR (Screen-Space Reflections) effect to pixel velocity change in range [0.0f; 1.0f] to be set. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSR Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

float engine.render.getSSRColorClampingVelocityThreshold ( ) #

Returns the current sensitivity of TAA color clamping for the SSR (Screen-Space Reflections) effect to pixel velocity change. This parameter is used to reduce ghosting effect for lower Color Clamping Intensity values: it automatically increases clamping intensity for higher velocities, and disables clamping for low velocity values.

Return value

Sensitivity of TAA color clamping for the SSR (Screen-Space Reflections) effect to pixel velocity change in range [0.0f; 1.0f]. Lower values result in more accumulated frames combined, which reduces noise flickering, but increases ghosting effect (to reduce ghosting in this case you can use SSR Color Clamping Velocity Threshold), while higher values reduce ghosting effect, but increase flickering. The default value is 1.0f.

void engine.render.setSSSSSDiffuse ( int diffuse ) #

Enables or disables the SSSSS (Screen-Space Subsurface Scattering) calculation for diffuse lighting (directional lights).
Notice
To set the value via the console, use the render_sssss_diffuseconsole command.

Arguments

  • int diffuse - 1 to enable the SSSSS calculation for diffuse lighting;0 — to disable it.

int engine.render.isSSSSSDiffuse ( ) #

Returns a value indicating if the SSSSS (Screen-Space Subsurface Scattering) calculation for diffuse lighting (directional lights) is enabled.
Notice
To get the value via the console, use the render_sssss_diffuseconsole command.

Return value

1 if the SSSSS calculation for diffuse lighting is enabled; otherwise, 0.

void engine.render.setSSSSSAmbient ( int ambient ) #

Enables or disables the SSSSS (Screen-Space Subsurface Scattering) calculation for ambient lighting (environment).
Notice
To set the value via the console, use the render_sssss_ambientconsole command.

Arguments

  • int ambient - 1 to enable the SSSSS calculation for ambient lighting; 0 — to disable it.

int engine.render.isSSSSSAmbient ( ) #

Returns a value indicating if the SSSSS (Screen-Space Subsurface Scattering) calculation for ambient lighting (environment) is enabled.
Notice
To get the value via the console, use the render_sssss_ambientconsole command.

Return value

1 if the SSSSS calculation for ambient lighting is enabled; otherwise, 0.

void engine.render.setSSSSSMinThreshold ( float threshold ) #

Sets the threshold of SSSSS (Screen-Space Subsurface Scattering) for the material's Translucent parameter equal to 0 (minimum translucency).
Notice
To set the value via the console, use the render_sssss_min_thresholdconsole command.

Arguments

  • float threshold - Threshold scattering value for the material's Translucent parameter equal to 0.

float engine.render.getSSSSSMinThreshold ( ) #

Returns the threshold of SSSSS (Screen-Space Subsurface Scattering) for the material's Translucent parameter equal to 0 (minimum translucency).
Notice
To get the value via the console, use the render_sssss_min_thresholdconsole command.

Return value

Threshold scattering value for the material's Translucent parameter equal to 0.

void engine.render.setSSSSSMaxThreshold ( float threshold ) #

Sets the threshold of SSSSS (Screen-Space Subsurface Scattering) for the material's Translucent parameter equal to 1 (maximum translucency).
Notice
To set the value via the console, use the render_sssss_max_thresholdconsole command.

Arguments

  • float threshold - Threshold scattering value for the material's Translucent parameter equal to 1.

float engine.render.getSSSSSMaxThreshold ( ) #

Returns the threshold of SSSSS (Screen-Space Subsurface Scattering) for the material's Translucent parameter equal to 1 (maximum translucency).
Notice
To get the value via the console, use the render_sssss_max_thresholdconsole command.

Return value

Threshold scattering value for the material's Translucent parameter equal to 1.

void engine.render.setSSSSSNoiseStep ( float step ) #

Sets the intensity of the step noise used for SSSSS (Screen-Space Subsurface Scattering) calculation to reduce banding artifacts of tracing: higher values make banding less visible.
Notice
To set the value via the console, use the render_sssss_noise_stepconsole command.

Arguments

  • float step - Intensity of the step noise used for SSSSS calculation.

float engine.render.getSSSSSNoiseStep ( ) #

Returns the intensity of the step noise used for SSSSS (Screen-Space Subsurface Scattering) calculation to reduce banding artifacts of tracing: higher values make banding less visible.
Notice
To get the value via the console, use the render_sssss_noise_stepconsole command.

Return value

Intensity of the step noise used for SSSSS calculation.

void engine.render.setSSSSSNoiseRay ( float ray ) #

Sets the intensity of the ray noise used for SSSSS (Screen-Space Subsurface Scattering) calculation to reduce banding artifacts of tracing: higher values make banding less visible.
Notice
To set the value via the console, use the render_sssss_noise_rayconsole command.

Arguments

  • float ray - Intensity of the ray noise used for SSSSS calculation.

float engine.render.getSSSSSNoiseRay ( ) #

Returns the intensity of the ray noise used for SSSSS (Screen-Space Subsurface Scattering) calculation to reduce banding artifacts of tracing: higher values make banding less visible.
Notice
To get the value via the console, use the render_sssss_noise_rayconsole command.

Return value

Intensity of the ray noise used for SSSSS calculation.

void engine.render.setSSSSSInterleaved ( int interleaved ) #

Enables or disables interleaved rendering mode for SSSSS (Screen-Space Subsurface Scattering).
Notice
To set the value via the console, use the render_sssss_interleavedconsole command.

Arguments

  • int interleaved - 1 to enable the interleaved mode for SSSSS; 0 — to disable it.

int engine.render.isSSSSSInterleaved ( ) #

Returns a value indicating if the interleaved rendering mode for SSSSS (Screen-Space Subsurface Scattering) is enabled.
Notice
To get the value via the console, use the render_sssss_interleavedconsole command.

Return value

1 if the interleaved mode for SSSSS is enabled; otherwise, 0.

void engine.render.setSSSSSInterleavedColorClamping ( int clamping ) #

Sets the color clamping mode used to reduce ghosting effect.
Notice
To set the value via the console, use the render_sssss_interleaved_color_clampingconsole command.

Arguments

  • int clamping - One of the color clamping modes:
    • 0 — disabled
    • 1 — low
    • 2 — medium
    • 3 — high
    • 4 — high + velocity

int engine.render.getSSSSSInterleavedColorClamping ( ) #

Returns the color clamping mode used to reduce ghosting effect.
Notice
To get the value via the console, use the render_sssss_interleaved_color_clampingconsole command.

Return value

One of the color clamping modes:
  • 0 — disabled
  • 1 — low
  • 2 — medium
  • 3 — high
  • 4 — high + velocity

void engine.render.setSSSSSInterleavedSamples ( int samples ) #

Defines the number of pixels to be skipped when rendering the SSSSS (Screen-Space Subsurface Scattering) effect with subsequent reconstruction of neighboring pixels using the data from previous frames.

Arguments

  • int samples -
    • 0 — half of all pixels is rendered skipping each second line (1 x 2)
    • 1 — quarter of all pixels is rendered skipping each second line and row (2 x 2)
    Notice
    To set the value via the console, use the render_sssss_interleaved_samplesconsole command.

int engine.render.getSSSSSInterleavedSamples ( ) #

Defines the number of pixels to be skipped when rendering the SSSSS (Screen-Space Subsurface Scattering) effect with subsequent reconstruction of neighboring pixels using the data from previous frames.

Return value

  • 0 — half of all pixels is rendered skipping each second line (1 x 2)
  • 1 — quarter of all pixels is rendered skipping each second line and row (2 x 2)
Notice
To get the value via the console, use the render_sssss_interleaved_samplesconsole command.

void engine.render.setSSSSSTAAFixFlicker ( int flicker ) #

Enables or disables the Fix Flicker effect for the SSSSS (Screen-Space Subsurface Scattering) effect that removes bright pixels by using the pixel brightness information from the previous frame.
Notice
To set the value via the console, use the render_sssss_taa_fix_flickerconsole command.

Arguments

  • int flicker - 1 to enable the Fix Flicker effect; 0 — to disable it.

int engine.render.isSSSSSTAAFixFlicker ( ) #

Returns a value indicating if the Fix Flicker effect is enabled for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To get the value via the console, use the render_sssss_taa_fix_flickerconsole command.

Return value

1 if the Fix Flicker effect is enabled; otherwise, 0.

void engine.render.setSSSSSTAAAntialiasingInMotion ( int motion ) #

Enables or disables antialiasing in motion (for moving camera and objects) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To set the value via the console, use the render_sssss_taa_antialiasing_in_motionconsole command.

Arguments

  • int motion - 1 to enable antialiasing in motion; 0 — to disable it.

int engine.render.isSSSSSTAAAntialiasingInMotion ( ) #

Returns a value indicating if antialiasing in motion is enabled for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To get the value via the console, use the render_sssss_taa_antialiasing_in_motionconsole command.

Return value

1 if antialiasing in motion is enabled; otherwise, 0.

void engine.render.setSSSSSTAAFramesByColor ( int color ) #

Enables or disables the Frames By Color option for SSSSS allowing accumulation of a variable number of frames over time depending on the pixel color difference between the current and previous frames.
Notice
To set the value via the console, use the render_sssss_taa_frames_by_colorconsole command.

Arguments

  • int color - 1 to enable the Frames By Color option; 0 — to disable it.

int engine.render.isSSSSSTAAFramesByColor ( ) #

Returns a value indicating if the Frames By Color option for the SSSSS (Screen-Space Subsurface Scattering) effect is enabled.
Notice
To get the value via the console, use the render_sssss_taa_frames_by_colorconsole command.

Return value

1 if the Frames By Color option is enabled; otherwise, 0.

void engine.render.setSSSSSTAAFramesByVelocity ( int velocity ) #

Enables or disables the Frames By Velocity option for the SSSSS (Screen-Space Subsurface Scattering) effect allowing accumulaton of a variable number of frames over time depending on the pixel velocity difference between the current and previous frames.
Notice
To set the value via the console, use the render_sssss_taa_frames_by_velocityconsole command.

Arguments

  • int velocity - 1 to enable the Frames By Velocity option; 0 — to disable it.

int engine.render.isSSSSSTAAFramesByVelocity ( ) #

Returns a value indicating if the Frames By Velocity option for the SSSSS (Screen-Space Subsurface Scattering) effect is enabled.
Notice
To get the value via the console, use the render_sssss_taa_frames_by_velocityconsole command.

Return value

1 if the Frames By Velocity option is enabled; otherwise, 0.

void engine.render.setSSSSSTAAPreserveDetails ( float details ) #

Enables or disables the Preserve Details option that controls the TAA (Temporal Anti-Aliasing) detail level for the SSSSS (Screen-Space Subsurface Scattering) effect: the higher the value, the more detailed the image is. At the value of 0, the image becomes blurred when moving the camera, however, the TAA effect is better.
Notice
To set the value via the console, use the render_sssss_taa_preserve_detailsconsole command.

Arguments

  • float details - The TAA detail level.

float engine.render.getSSSSSTAAPreserveDetails ( ) #

Returns the value of the TAA (Temporal Anti-Aliasing) detail level for the SSSSS (Screen-Space Subsurface Scattering) effect: the higher the value, the more detailed the image is. At the value of 0, the image becomes blurred when moving the camera, however, the TAA effect is better.
Notice
To get the value via the console, use the render_sssss_taa_preserve_detailsconsole command.

Return value

The TAA detail level.

void engine.render.setSSSSSTAAFrameCount ( float count ) #

Sets the number of frames that are combined and blended during TAA calculation for the SSSSS (Screen-Space Subsurface Scattering) effect. The higher the value, the more frames are combined into the final image and the better anti-aliasing is. This value is used only when Frames By Velocity option is disabled.
Notice
To set the value via the console, use the render_sssss_taa_frame_countconsole command.

Arguments

  • float count - The number of frames for velocity buffer. The default value is 30.0f

float engine.render.getSSSSSTAAFrameCount ( ) #

Returns the number of frames that are combined and blended during TAA calculation for the SSSSS (Screen-Space Subsurface Scattering) effect. The higher the value, the more frames are combined into the final image and the better anti-aliasing is. This value is used only when Frames By Velocity option is disabled.
Notice
To get the value via the console, use the render_sssss_taa_frame_countconsole command.

Return value

The number of frames for velocity buffer. The default value is 30.0f

void engine.render.setSSSSSTAAFramesVelocityThreshold ( float threshold ) #

Sets the threshold value defining sensitivity to velocity change (velocity threshold at which pixels are treated as fast moving) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To set the value via the console, use the render_sssss_taa_frames_velocity_thresholdconsole command.

Arguments

  • float threshold - Velocity threshold at which pixels are treated as fast-moving.

float engine.render.getSSSSSTAAFramesVelocityThreshold ( ) #

Returns the threshold value defining sensitivity to velocity change (velocity threshold at which pixels are treated as fast moving) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To get the value via the console, use the render_sssss_taa_frames_velocity_thresholdconsole command.

Return value

Velocity threshold at which pixels are treated as fast-moving.

void engine.render.setSSSSSTAAMaxFramesByVelocity ( float velocity ) #

Sets the number of frames combined and blended for pixels that don't move relative to the screen space — the maximum frame count of TAA (Temporal Anti-Aliasing) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To set the value via the console, use the render_sssss_taa_max_frames_by_velocityconsole command.

Arguments

  • float velocity - Maximum number of frames for velocity buffer. The default value is 60.0f.

float engine.render.getSSSSSTAAMaxFramesByVelocity ( ) #

Returns the number of frames combined and blended for pixels that don't move relative to the screen space — the maximum frame count of TAA (Temporal Anti-Aliasing) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To get the value via the console, use the render_sssss_taa_max_frames_by_velocityconsole command.

Return value

Maximum number of frames for velocity buffer.

void engine.render.setSSSSSTAAMinFramesByVelocity ( float velocity ) #

Sets the number of frames combined and blended for fast-moving pixels on the screen — the minimum frame count of TAA (Temporal Anti-Aliasing) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To set the value via the console, use the render_sssss_taa_min_frames_by_velocityconsole command.

Arguments

  • float velocity - Minimum number of frames for velocity buffer. The default value is 4.0f.

float engine.render.getSSSSSTAAMinFramesByVelocity ( ) #

Returns the number of frames combined and blended for fast-moving pixels on the screen — the minimum frame count of TAA (Temporal Anti-Aliasing) for the SSSSS (Screen-Space Subsurface Scattering) effect.
Notice
To get the value via the console, use the render_sssss_taa_min_frames_by_velocityconsole command.

Return value

Minimum number of frames for velocity buffer.

void engine.render.setSSSSSTAACatmullResampling ( int resampling ) #

Enables and disables Catmull-Rom resampling for Screen-Space Subsurface Scattering. It allows reducing image blurring when the camera moves forward/backward. It is recommended to disable resampling at low settings.
Notice
To set the value via the console, use the render_sssss_taa_catmull_resamplingconsole command.

Arguments

  • int resampling - 1 to enable Catmull-Rom resampling; 0 — to disable it.

int engine.render.isSSSSSTAACatmullResampling ( ) #

Returns a value indicating if Catmull-Rom resampling for Screen-Space Subsurface Scattering is enabled. It allows reducing image blurring when the camera moves forward/backward. It is recommended to disable resampling at low settings.
Notice
To get the value via the console, use the render_sssss_taa_catmull_resamplingconsole command.

Return value

1 if Catmull-Rom resampling is enabled; otherwise, 0.

void engine.render.setSSSSSTAASamples ( int samples ) #

Sets the number of the sample offsets performed during subpixel jittering for Screen-Space Subsurface Scattering. By the minimum value of 1, there will be no offsets, and, therefore, no anti-aliasing.
Notice
To set the value via the console, use the render_sssss_taa_samplesconsole command.

Arguments

  • int samples - One of the values defining the number of samples:
    • 0 — 1 sample offset, no anti-aliasing
    • 1 — 4 offsets
    • 2 — 8 offsets
    • 3 — 16 offsets

int engine.render.getSSSSSTAASamples ( ) #

Returns the number of the sample offsets performed during subpixel jittering for Screen-Space Subsurface Scattering. By the minimum value of 1, there will be no offsets, and, therefore, no anti-aliasing.
Notice
To get the value via the console, use the render_sssss_taa_samplesconsole command.

Return value

One of the values defining the number of samples:
  • 0 — 1 sample offset, no anti-aliasing
  • 1 — 4 offsets
  • 2 — 8 offsets
  • 3 — 16 offsets

void engine.render.setEnvironmentCorrectRoughness ( int roughness ) #

Enables one of correction modes for environment reflections on rough surfaces or disables correction. Correction modes differ in the number of rays used to create a reflection on a rough surface.

Arguments

int engine.render.getEnvironmentCorrectRoughness ( ) #

Returns the value indicating the correction mode set for environment reflections on rough surfaces. Correction modes differ in the number of rays used to create a reflection on a rough surface.

Return value

One of the RENDER_CORRECT_ROUGHNESS_* modes.

void engine.render.getScreenshot ( Image image ) #

Takes a screenshot and puts it to the specified image.

Arguments

  • Image image - Image to which the screenshot is to be saved.

void engine.render.setShowLandscapeMask ( int displacement ) #

Sets the number of the landscape terrain detail mask to be visualized. This method can be used for visual debugging to display the selected detail mask of the landscape terrain.
Notice
To set the value via the console, use render_show_landscape_maskconsole command.

Arguments

  • int displacement - Number of landscape terrain detail mask to be visualized in the [1; 20] range, or 0 - to disable mask visualization.

int engine.render.getShowLandscapeMask ( ) #

Returns the number of the landscape terrain detail mask currently visualized. This method can be used for visual debugging to display the selected detail mask of the landscape terrain.
Notice
To get the value via the console, use render_show_landscape_maskconsole variable.

Return value

Number of the currently visualized landscape terrain detail mask in the [1; 20] range, or 0 if mask visualization is disabled.

void engine.render.setShowLandscapeTerrainVTStreaming ( int streaming ) #

Sets a value indicating if visualization is enabled for streaming of tiles of the landscape terrain megatexture. This method can be used for visual adjustment of the streaming process.
Notice
To set the value via the console, use render_show_landscape_terrain_vt_streamingconsole command.

Arguments

  • int streaming - 1 to enable visualization of streaming of landscape terrain tiles; 0 — to disable it.

int engine.render.isShowLandscapeTerrainVTStreaming ( ) #

Returns a value indicating if visualization is enabled for streaming of tiles of the landscape terrain megatexture. This method can be used for visual adjustment of the streaming process.
Notice
To get the value via the console, use render_show_landscape_terrain_vt_streamingconsole variable.

Return value

1 if visualization for streaming of tiles of the landscape terrain megatexture is enabled; otherwise, 0.

void engine.render.setLandscapeTerrainVTMemorySize ( float size ) #

Sets a value defining memory consumption for the Landscape Terrain textures.
Notice
To set the value via the console, use render_landscape_terrain_vt_memory_sizeconsole command.

Arguments

  • float size - Memory consumption factor in the [0.0f; 1.0f] range:
    • 0.0f corresponds to 3072 x 3072 (~200 MB of VRAM)
    • 1.0f corresponds to 16384 x 16384 (~3.1 GB of VRAM)
    The default value is 0.4f corresponds to 8192 × 8192 (~860 MB of VRAM).

float engine.render.getLandscapeTerrainVTMemorySize ( ) #

Returns a value defining memory consumption for the Landscape Terrain textures.
Notice
To get the value via the console, use render_landscape_terrain_vt_memory_sizeconsole variable.

Return value

Memory consumption factor in the [0.0f; 1.0f] range:
  • 0.0f corresponds to 3072 x 3072 (~200 MB of VRAM)
  • 1.0f corresponds to 16384 x 16384 (~3.1 GB of VRAM)
The default value is 0.4f corresponds to 8192 × 8192 (~860 MB of VRAM).

void engine.render.setLandscapeTerrainVTTargetResolution ( vec2 resolution ) #

Sets the target resolution for the landscape terrain.
Notice
To set the value via the console, use render_landscape_terrain_vt_target_resolutionconsole command.

Arguments

  • vec2 resolution - Two-component vector defining the target viewport resolution along X and Y axes. The default value is 1344 x 756.

vec2 engine.render.getLandscapeTerrainVTTargetResolution ( ) #

Returns the current target resolution for the landscape terrain.
Notice
To get the value via the console, use render_landscape_terrain_vt_target_resolutionconsole variable.

Return value

Two-component vector defining the target viewport resolution along X and Y axes. The default value is 1344 x 756.

void engine.render.setLandscapeTerrainVTDetailLevelByAngle ( float angle ) #

Sets a value indicating detail level reduction depending on the inclination of the the Landscape Terrain polygons relative to viewing direction. Can be used to reduce streaming load and memory consumption.
Notice
To set the value via the console, use render_landscape_terrain_vt_detail_level_by_angleconsole command.

Arguments

  • float angle - Detail level quality value in the [0.0f; 1.0f] range:
    • 1.0f - pixel-to-pixel quality
    • lower values decrease quality

float engine.render.getLandscapeTerrainVTDetailLevelByAngle ( ) #

Returns a value indicating detail level reduction depending on the inclination of the the Landscape Terrain polygons relative to viewing direction. Can be used to reduce streaming load and memory consumption.
Notice
To get the value via the console, use render_landscape_terrain_vt_detail_level_by_angleconsole variable.

Return value

Detail level quality value in the [0.0f; 1.0f] range:
  • 1.0f - pixel-to-pixel quality
  • lower values decrease quality

void engine.render.setLandscapeTerrainVTFiltering ( int filtering ) #

Sets the filtering mode for the Landscape Terrain textures.
Notice
To set the value via the console, use render_landscape_terrain_vt_filteringconsole command.

Arguments

  • int filtering - Filtering mode to be used:
    • 0 — Low (lower mip-level is used)
    • 1 — Medium (higher mip-level is used)
    • 2 — High (linear interpolation between adjacent mip-levels)

int engine.render.getLandscapeTerrainVTFiltering ( ) #

Returns the filtering mode currently used for the Landscape Terrain textures.
Notice
To get the value via the console, use render_landscape_terrain_vt_filteringconsole variable.

Return value

Filtering mode currently used:
  • 0 — Low (lower mip-level is used)
  • 1 — Medium (higher mip-level is used)
  • 2 — High (linear interpolation between adjacent mip-levels)

void engine.render.setLandscapeTerrainVTTilesUpdatePerFrame ( int frame ) #

Sets the number of tiles passed to the virtual texture of the Landscape Terrain each frame.

Arguments

  • int frame - Number of terrain tiles to be passed to the virtual texture each frame, in the [1; 256] range. The default value is 60.

int engine.render.getLandscapeTerrainVTTilesUpdatePerFrame ( ) #

Returns the current number of tiles passed to the virtual texture of the Landscape Terrain each frame.

Return value

Number of tiles currently passed to the virtual texture each frame, in the [1; 256] range. The default value is 60.

void engine.render.setLandscapeTerrainVTTilesLoadPerFrame ( int frame ) #

Sets the number of landscape terrain tiles to be loaded per frame. You can decrease the value of this parameter to reduce spikes, but in this case streaming becomes slower and more noticeable.

Arguments

  • int frame - Number of landscape terrain tiles to be loaded per frame, in the [1; 64] range. The default value is 4.

int engine.render.getLandscapeTerrainVTTilesLoadPerFrame ( ) #

Returns the current number of landscape terrain tiles loaded per frame. You can decrease the value of this parameter to reduce spikes, but in this case streaming becomes slower and more noticeable.

Return value

Number of landscape terrain tiles currently loaded per frame, in the [1; 64] range. The default value is 4.

void engine.render.setLandscapeTerrainVTTilesReloadPerFrame ( int frame ) #

Sets the number of tiles to be reloaded per frame after applying changes to the Landscape Terrain surface.

Arguments

  • int frame - Number of tiles to be reloaded per frame, in the [1; 64] range. The default value is 4.

int engine.render.getLandscapeTerrainVTTilesReloadPerFrame ( ) #

Returns the current number of tiles to be reloaded per frame after applying changes to the Landscape Terrain surface.

Return value

Number of tiles to be reloaded per frame, in the [1; 64] range. The default value is 4.

void engine.render.setLandscapeTerrainDetailResolutionAdditionalMask ( int mask ) #

Sets the resolution of the additional mask texture for details of the landscape terrain.

Arguments

  • int mask - Texture resolution to be set. One of the following values:
    • 0 - 64×64
    • 1 - 128×128
    • 2 - 256×256
    • 3 - 512×512
    • 4 - 1024×1024 (default)
    • 5 - 2048×2048
    • 6 - 4096×4096
    • 7 - 8192×8192
    • 8 - 16384×16384

int engine.render.getLandscapeTerrainDetailResolutionAdditionalMask ( ) #

Returns the current resolution of the additional mask texture for details of the landscape terrain.

Return value

Current texture resolution. One of the following values:
  • 0 - 64×64
  • 1 - 128×128
  • 2 - 256×256
  • 3 - 512×512
  • 4 - 1024×1024 (default)
  • 5 - 2048×2048
  • 6 - 4096×4096
  • 7 - 8192×8192
  • 8 - 16384×16384

void engine.render.setLandscapeTerrainDetailResolutionAlbedo ( int resolution ) #

Sets the resolution of the albedo texture for details of the landscape terrain.

Arguments

  • int resolution - Texture resolution to be set. One of the following values:
    • 0 - 64×64
    • 1 - 128×128
    • 2 - 256×256
    • 3 - 512×512
    • 4 - 1024×1024 (default)
    • 5 - 2048×2048
    • 6 - 4096×4096
    • 7 - 8192×8192
    • 8 - 16384×16384

int engine.render.getLandscapeTerrainDetailResolutionAlbedo ( ) #

Returns the current resolution of the albedo texture for details of the landscape terrain.

Return value

Current texture resolution. One of the following values:
  • 0 - 64×64
  • 1 - 128×128
  • 2 - 256×256
  • 3 - 512×512
  • 4 - 1024×1024 (default)
  • 5 - 2048×2048
  • 6 - 4096×4096
  • 7 - 8192×8192
  • 8 - 16384×16384

void engine.render.setLandscapeTerrainDetailResolutionHeight ( int resolution ) #

Sets the resolution of the height texture for details of the landscape terrain.

Arguments

  • int resolution - Texture resolution to be set. One of the following values:
    • 0 - 64×64
    • 1 - 128×128
    • 2 - 256×256
    • 3 - 512×512
    • 4 - 1024×1024 (default)
    • 5 - 2048×2048
    • 6 - 4096×4096
    • 7 - 8192×8192
    • 8 - 16384×16384

int engine.render.getLandscapeTerrainDetailResolutionHeight ( ) #

Returns the current resolution of the height texture for details of the landscape terrain.

Return value

Current texture resolution. One of the following values:
  • 0 - 64×64
  • 1 - 128×128
  • 2 - 256×256
  • 3 - 512×512
  • 4 - 1024×1024 (default)
  • 5 - 2048×2048
  • 6 - 4096×4096
  • 7 - 8192×8192
  • 8 - 16384×16384

void engine.render.setLandscapeTerrainVisibleDistance ( float distance ) #

Sets the maximum visibility distance for the landscape terrain. The terrain is visible, as long as the distance between the camera and the terrain does not exceed this value.

Arguments

  • float distance - Maximum visibility distance to be set for the landscape terrain, in meters. The default value is 30 km.

float engine.render.getLandscapeTerrainVisibleDistance ( ) #

Returns the current maximum visibility distance for the landscape terrain. The terrain is visible, as long as the distance between the camera and the terrain does not exceed this value.

Return value

Maximum visibility distance for the landscape terrain, in meters. The default value is 30 km.

void engine.render.setLandscapeTerrainGeometryHoles ( int holes ) #

Sets a value indicating if decal-based holes for the landscape terrain are enabled.
Notice
To set the value via the console, use render_landscape_terrain_geometry_holesconsole command.

Arguments

int engine.render.isLandscapeTerrainGeometryHoles ( ) #

Returns a value indicating if decal-based holes for the landscape terrain are enabled.
Notice
To get the value via the console, use render_landscape_terrain_geometry_holesconsole variable.

Return value

1 if decal-based holes are enabled for the landscape terrain; otherwise, 0.

void engine.render.setLandscapeTerrainGeometryPolygonSize ( float density ) #

Sets the size of Landscape Terrain polygons defining the maximum allowed density of Landscape Terrain geometry.

Arguments

  • float density - New size of Landscape Terrain polygons to be set (in units), in the [0.0001f, 1000.0f] range. The default value is 0.01f.

float engine.render.getLandscapeTerrainGeometryPolygonSize ( ) #

Returns the size of Landscape Terrain polygons defining the maximum allowed density of Landscape Terrain geometry.

Return value

Current size of Landscape Terrain polygons (in units), in the [0.0001f, 1000.0f] range. The default value is 0.01f.

void engine.render.setLandscapeTerrainGeometryProgression ( float progression ) #

Sets the progression of Landscape Terrain geometry tesselation.

Arguments

  • float progression - New progression value to be set in the [0.0f; 50.0f] range. The default value is 1.5f.

float engine.render.getLandscapeTerrainGeometryProgression ( ) #

Returns the current progression of Landscape Terrain geometry tesselation.

Return value

Current progression value in the [0.0f; 50.0f] range. The default value is 1.5f.

void engine.render.setLandscapeTerrainGeometryFadeLods ( float lods ) #

Sets the intensity of fading between levels of Landscape Terrain geometry tesselation. This value can be increased to remove sharp edges between areas with different geometry density.

Arguments

  • float lods - Fading intensity value to be set, in the [0.0f; 1.0f] range. The default value is 0.5f.

float engine.render.getLandscapeTerrainGeometryFadeLods ( ) #

Returns the current intensity of fading between levels of Landscape Terrain geometry tesselation. This value can be increased to remove sharp edges between areas with different geometry density.

Return value

Current fading intensity value in the [0.0f; 1.0f] range. The default value is 0.5f.

void engine.render.setLandscapeTerrainGeometrySubpixelReduction ( float reduction ) #

Sets the minimum ratio between the polygon size (in screen space) to the size of an area in the viewport for skipping polygons rendering (the ones having a lower ratio will be removed).

Arguments

  • float reduction - Subpixel reduction ratio to be set, in the [0.0f; 50.0f] range. The default value is 6.0f.
    Notice
    Setting too high values may cause small but noticeable visual artifacts when the camera moves.

float engine.render.getLandscapeTerrainGeometrySubpixelReduction ( ) #

Returns the minimum ratio between the polygon size (in screen space) to the size of an area in the viewport for skipping polygons rendering (the ones having a lower ratio will be removed).

Return value

Current subpixel reduction ratio, in the [0.0f; 50.0f] range. The default value is 6.0f.

void engine.render.setLandscapeTerrainCullingAgressive ( int agressive ) #

Sets a value indicating if frustum culling optimization is enabled for the Landscape Terrain. When enabled, the number of culled polygons increases thereby increasing performance. In case of any issues with polygons rendering, try disabling this option (however, note that performance may drop).
Notice
To set the value via the Console, use render_landscape_terrain_culling_agressiveconsole command.

Arguments

  • int agressive - 1 to enable frustum culling optimization for the ; 0 - to disable it.

int engine.render.isLandscapeTerrainCullingAgressive ( ) #

Returns a value indicating if frustum culling optimization is enabled for the Landscape Terrain. When enabled, the number of culled polygons increases thereby increasing performance. In case of any issues with polygons rendering, try disabling this option (however, note that performance may drop).
Notice
To get the value via the Console, use render_landscape_terrain_culling_agressiveconsole variable.

Return value

1 if frustum culling optimization is enabled for the landscape terrain; otherwise, 0.

void engine.render.setLandscapeTerrainCullingFrustumPadding ( float padding ) #

Sets a multiplier for the size of viewing frustum to be used for culling polygons of the Landscape Terrain.

Arguments

  • float padding - Frustumn padding multiplier to be set, in the [0.0f; 1.0f] range. The default value is 0.1f.

float engine.render.getLandscapeTerrainCullingFrustumPadding ( ) #

Returns the current multiplier for the size of viewing frustum used for culling polygons of the Landscape Terrain.

Return value

Current frustumn padding multiplier, in the [0.0f; 1.0f] range. The default value is 0.1f.

void engine.render.setLandscapeTerrainCullingBackFace ( float face ) #

Sets the threshold used for culling tessellation patches of the Landscape Terrain oriented to the camera with their back faces (it is a multiplier for the angle between the tessellation patch normal and the camera's view direction). Higher values result in a smaller angle between the patch normal and the camera's view direction required for culling this patch.

Arguments

  • float face - Backface culling threshold value to be set in the [0.0f; 1.0f] range. The default value is 0.5f.

float engine.render.getLandscapeTerrainCullingBackFace ( ) #

Returns the current threshold used for culling tessellation patches of the Landscape Terrain oriented to the camera with their back faces (it is a multiplier for the angle between the tessellation patch normal and the camera's view direction). Higher values result in a smaller angle between the patch normal and the camera's view direction required for culling this patch.

Return value

Current backface culling threshold value in the [0.0f; 1.0f] range. The default value is 0.5f.

void engine.render.setLandscapeTerrainCullingObliqueFrustum ( float frustum ) #

Sets the multiplier for culling of tessellation patches of the Landscape Terrain beyond the oblique frustum plane.

Arguments

  • float frustum - Multiplier value to be set, in the [0.0f, 1.0f] range. Higher values result in more patches culled. The default value is 0.9f.

float engine.render.getLandscapeTerrainCullingObliqueFrustum ( ) #

Returns the current multiplier for culling of tessellation patches of the Landscape Terrain beyond the oblique frustum plane.

Return value

Current multiplier value, in the [0.0f, 1.0f] range. Higher values result in more patches culled. The default value is 0.9f.

void engine.render.setLandscapeTerrainTexelSize ( float size ) #

Sets the texel size of the Landscape Terrain render textures representing the maximum level of detail for the albedo, normal, and height components of the Landscape Terrain.

Arguments

  • float size - Landscape Terrain texel size (in meters), in the [0.0001f, 1.0f] range. The default value is 0.001f.

float engine.render.getLandscapeTerrainTexelSize ( ) #

Returns the texel size of the Landscape Terrain render textures representing the maximum level of detail for the albedo, normal, and height components of the Landscape Terrain.

Return value

Landscape Terrain texel size (in meters), in the [0.0001f, 1.0f] range. The default value is 0.001f.

void engine.render.setLandscapeCacheCPUSize ( int size ) #

Sets the CPU cache size to be used for landscape terrain rendering. CPU cache size affects intersections, physics, streaming, etc. The size of CPU cache depends on the scene.

Arguments

  • int size - New СPU cache size to be set, in percentage of the total СPU memory. The default value is 10%.

int engine.render.getLandscapeCacheCPUSize ( ) #

Returns the current СPU cache size used for landscape terrain rendering. CPU cache size affects intersections, physics, streaming, etc. The size of CPU cache depends on the scene.

Return value

Current CPU cache size, in percentage of the total GPU memory. The default value is 10%.

void engine.render.setLandscapeCacheGPUSize ( int size ) #

Sets the GPU cache size to be used for landscape terrain rendering. GPU cache is used to accumulate tiles, that are visible to the camera, before streaming them to the megatexture.
Notice
High-resolution maps require larger cache capacity.

Arguments

  • int size - New GPU cache size to be set, in percentage of the total GPU memory. The default value is 4%.

int engine.render.getLandscapeCacheGPUSize ( ) #

Returns the current GPU cache size used for landscape terrain rendering. GPU cache is used to accumulate tiles, that are visible to the camera, before streaming them to the megatexture.
Notice
High-resolution maps require larger cache capacity.

Return value

Current GPU cache size, in percentage of the total GPU memory. The default value is 4%.

void engine.render.setLandscapeCacheGPULifeTime ( int time ) #

Sets the lifetime of GPU cache used for landscape terrain rendering.

Arguments

  • int time - New GPU cache lifetime to be set, number of frames in the [1; 60] range. The default value is 4.

int engine.render.getLandscapeCacheGPULifeTime ( ) #

Returns the current lifetime of GPU cache used for landscape terrain rendering.

Return value

Current GPU cache lifetime, number of frames in the [1; 60] range. The default value is 4.

void engine.render.setLandscapeCacheGPUUpdateLimit ( float limit ) #

Sets the maximum update limit for GPU cache used for landscape terrain rendering. Lower values may help reducing spikes, but be careful, as setting too low values may result in growing cache size due to slower unloading of textures.

Arguments

  • float limit - New GPU cache update limit to be set, in milliseconds. The default value is 1.5 ms.

float engine.render.getLandscapeCacheGPUUpdateLimit ( ) #

Returns the current maximum update limit for GPU cache used for landscape terrain rendering. Lower values may help reducing spikes, but be careful, as setting too low values may result in growing cache size due to slower unloading of textures.

Return value

Current GPU cache update limit, in milliseconds. The default value is 1.5 ms.
Last update: 2019-12-25
Build: ()