FrustumCulling

Description

sealed class Tinman.Terrain.Meshing.FrustumCulling

The FrustumCulling class traverses the filtered mesh (see IMeshFilters.FilterIn), performs a visibility tests for each mesh sector with the configured frustum (see Frustum) and culls away all sectors that are outside of it (see MeshTree.SectorCull).

Each visited mesh sector is tested against the frustum. If it lies outside the frustum, it will be culled away (see MeshTree.SectorCull).

If CameraInfo or Viewport is left uninitialized, the IMeshBoundMinSize.MinSize settings will be ignored during frustum culling.

The following vertex data semantics are used by this class:

Public / Constructors

Frustum​Culling


public constructor FrustumCulling → ()

Creates a new instance of FrustumCulling.

Public / Attributes

Filter​In


public attribute FilterIn → (get,set)

value : MeshTreeFilter

The filter or null.

The mesh tree input filter to use for querying sector culling and marks.

The default value is null (i.e. all mesh sectors are visited).

Frustum


public attribute Frustum → (get,set)

value : Frustum

The view frustum.

The view frustum to use.

Inside​Mask


public attribute InsideMask → (get,set)

value : int32

The frustum plane bitmask for planes a indices [0..31].

A bitmask that indicates the frustum planes that will not be tested. Each bit corresponds to one frustum plane.

Setting the bitmask to 0x7FFFFFFF will disable frustum culling; setting it to 0 will enable all planes for frustum culling.