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
Containers
Controls-Related Classes
Core Library
Engine-Related Classes
GUI-Related Classes
Node-Related Classes
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
Rendering-Related Classes
Utility Classes

BoundFrustum Class

This class serves to construct the bounding frustum in single precision coordinates.

Notice
Instances of this class are deleted automatically when it is necessary.

In case of double precision coordinates, the bounding frustum should be constructed by using the WorldBoundFrustum class. It includes the same functions as the BoundFrustum class, but its functions deal with the double precision coordinates.

Notice
To support both single and double precision builds, you can use the WorldBoundFrustum class only. The engine will automatically substitute it with the BoundFrustum if it is required.

BoundFrustum Class

Members


BoundFrustum ()

Constructor. Creates an empty bounding frustum.

BoundFrustum (const mat4 & projection, const mat4 & modelview)

Initialization by matrices.

Arguments

  • const mat4 & projection - A projection matrix.
  • const mat4 & modelview - A modelview matrix.

BoundFrustum (const BoundFrustum & bf)

Initialization by the bounding frustum.

Arguments

  • const BoundFrustum & bf - The bounding frustum.

BoundFrustum (const BoundFrustum & bf, const mat4 & itransform)

Initialization by the bounding frustum and transformation matrix.

Arguments

  • const BoundFrustum & bf - The bounding frustum.
  • const mat4 & itransform - The inverse transformation matrix.

~BoundFrustum ()

Destructor.

void clear ()

Clears the bounding frustum.

void set (const mat4 & projection, const mat4 & modelview)

Sets the bounding frustum by matrices.

Arguments

  • const mat4 & projection - A projection matrix.
  • const mat4 & modelview - A modelview matrix.

void set (const BoundFrustum & bf)

Sets the bounding frustum by the bounding frustum.

Arguments

  • const BoundFrustum & bf - The bounding frustum.

void set (const BoundFrustum & bf, const mat4 & itransform)

Sets the bounding frustum by the bounding frustum and transformation matrix.

Arguments

  • const BoundFrustum & bf - The bounding frustum.
  • const mat4 & itransform - The inverse transformation matrix.

int inside (const vec3 & point, float radius) const

Checks if the sphere is inside the bounding frustum.

Arguments

  • const vec3 & point - The coordinates of the center of the sphere.
  • float radius - The sphere radius.

Return value

Return 1 if the sphere is inside the bounding frustum; otherwise, 0 is returned.

int inside (const vec3 & min, const vec3 & max) const

Checks if the box is inside the bounding frustum.

Arguments

  • const vec3 & min - The box minimum coordinate.
  • const vec3 & max - The box maximum coordinate.

Return value

Return 1 if the box is inside the bounding frustum; otherwise, 0 is returned.

int inside (const BoundSphere & bs) const

Checks if the bounding sphere is inside the bounding frustum.

Arguments

  • const BoundSphere & bs - The bounding sphere.

Return value

Return 1 if the bounding sphere is inside the bounding frustum; otherwise, 0 is returned.

int inside (const BoundBox & bb) const

Checks if the bounding box is inside the bounding frustum.

Arguments

  • const BoundBox & bb - The bounding box.

Return value

Return 1 if the bounding box is inside the bounding frustum; otherwise, 0 is returned.

UNIGINE_INLINE int isValid () const

Checks the bounding frustum status.

Return value

Return 1 if the bounding frustum is valid.

UNIGINE_INLINE const mat4 & getProjection () const

Gets the bounding frustum projection matrix.

Return value

The bounding frustum projection matrix.

UNIGINE_INLINE const mat4 & getModelview () const

Gets the bounding frustum modelview matrix.

Return value

The bounding frustum modelview matrix.

UNIGINE_INLINE const vec4 * getPlanes () const

Gets the bounding frustum cliping planes array.

Return value

The bounding frustum cliping planes array.
Last update: 2017-07-03