Skip to main content

FrustumCullingStrategy Class

Abstract base class for implementing frustum culling strategies. More...

Declaration

class helios::scene::FrustumCullingStrategy { ... }

Derived Classes

classCullNoneStrategy

A default FrustumCullingStrategy that simply returns all SceneNodes found, e.g. no culling is applied. More...

Public Constructors Index

FrustumCullingStrategy ()=default

Public Destructor Index

~FrustumCullingStrategy ()=default

Public Member Functions Index

std::vector< const helios::scene::SceneNode * >cull (const helios::scene::CameraSceneNode *cameraSceneNode, const helios::scene::SceneNode &root)=0

Culls the scene graph to identify the visible SceneNodes. More...

Description

Abstract base class for implementing frustum culling strategies.

A FrustumCullingStrategy determines which SceneNodes are visible, relative to the view frustum of a given camera.

See Also

[She07, pp. 443]

Todo

The returned list should be considered "as is" for now: Each entry in the list is a single renderable entity to consider. Its child nodes (i.e. the sub tree for which this node is the root) should _not_ be automatically considered for rendering. Later iterations should probably use an individual struct that provides a hint whether for a given node a whole subtree should be considered, saving time for culling and memory when constructing the list.

Definition at line 32 of file FrustumCullingStrategy.ixx.

Public Constructors

FrustumCullingStrategy()

helios::scene::FrustumCullingStrategy::FrustumCullingStrategy ()
default

Definition at line 39 of file FrustumCullingStrategy.ixx.

Public Destructor

~FrustumCullingStrategy()

virtual helios::scene::FrustumCullingStrategy::~FrustumCullingStrategy ()
virtual default

Definition at line 37 of file FrustumCullingStrategy.ixx.

Public Member Functions

cull()

virtual std::vector< const helios::scene::SceneNode * > helios::scene::FrustumCullingStrategy::cull (const helios::scene::CameraSceneNode * cameraSceneNode, const helios::scene::SceneNode & root)
nodiscard

Culls the scene graph to identify the visible SceneNodes.

Parameters
cameraSceneNode

The CameraSceneNode providing information about the view frustum.

root

The parent of the hierarchy to cull.

Returns

A vector with const pointers to the SceneNodes visible.

info

Ownership of the SceneNodes remains with their respective owners. Implementing APIs have to make sure that the origins of the pointers returned with the vector are not destroyed in between.

Definition at line 54 of file FrustumCullingStrategy.ixx.


The documentation for this class was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.