Programming
Fundamentials
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Core Library
Containers
Engine Classes
Node-Related Classes
Rendering-Related Classes
Physics-Related Classes
Bounds-Related Classes
GUI-Related Classes
Controls-Related Classes
Pathfinding-Related Classes
Utility Classes

Occluder

An occluder is a box-shaped object that is used to cull objects' surfaces, bounds of which are not visible behind it. The surfaces behind the occluder are not sent to the GPU, thereby saving performance.

Depending on the Back face parameter value, the front or back faces of the occluder are used to cull surfaces. The front faces of the occluder include all of the occluder sides that face the camera. The back faces of the occluder include the sides that are behind the front faces.

Schematically, the occluder faces can be shown as follows:

Front faces of the occluder
Back faces of the occluder

Notice
If any part of the bound of the object's surface is visible behind the occluder, the surface will not be culled.

See also

  • General information on occluders
  • A WorldOccluder class to edit occluders via UnigineScript
  • A data/samples/worlds/occluder_00 sample

Creating Occluder

To create an occluder via UnigineEditor:

  1. Run UnigineEditor.
  2. On the Menu bar, click Create -> Worlds -> Occluder.

  3. Place the occluder in the world and specify the required parameters for it.

Notice
To display the buffer that is used for occluders displayed in the viewport, pass 1 to the render_show_occluder console command.

Editing Occluder

On the Occluder tab of the Nodes panel, you can adjust the following parameters of the occluder:

Back face Indicates whether the back faces of the occluder box are used instead of front faces to occlude objects. If unchecked, the front faces will be used.
Back face is unchecked
Back face is checked
Size Size of the occluder along the axes.
Distance Distance between the camera and the bounding box of the occluder, at which the occluder becomes disabled (it isn't processed by the CPU, hence it isn't rendered). For example, you should disable the occluder at a certain distance if it stops hiding the objects and their surfaces in order to increase performance. By default, the inf value is used.
Last update: 2017-07-03