Panda3D
|
This defines the abstract interface for an object that receives Geoms identified by the CullTraverser. More...
#include "cullHandler.h"
Public Member Functions | |
virtual void | end_traverse () |
This callback function is intended to be overridden by a derived class. | |
virtual void | record_object (CullableObject *object, const CullTraverser *traverser) |
This callback function is intended to be overridden by a derived class. | |
Static Public Member Functions | |
static void | draw (CullableObject *object, GraphicsStateGuardianBase *gsg, bool force, Thread *current_thread) |
Draws the indicated CullableObject, with full support for decals if they are attached to the object. | |
This defines the abstract interface for an object that receives Geoms identified by the CullTraverser.
By itself, it's not a particularly useful class; to use it, derive from it and redefine record_object().
Definition at line 28 of file cullHandler.h.
CullHandler::CullHandler | ( | ) |
Definition at line 24 of file cullHandler.cxx.
|
virtual |
Definition at line 31 of file cullHandler.cxx.
|
inlinestatic |
Draws the indicated CullableObject, with full support for decals if they are attached to the object.
The appropriate state is set on the GSG before drawing the object.
Definition at line 19 of file cullHandler.I.
Referenced by DrawCullHandler::record_object().
|
virtual |
This callback function is intended to be overridden by a derived class.
This is called at the end of the traversal.
Reimplemented in PipeOcclusionCullTraverser.
Definition at line 53 of file cullHandler.cxx.
Referenced by CullTraverser::end_traverse().
|
virtual |
This callback function is intended to be overridden by a derived class.
This is called as each Geom is discovered by the CullTraverser.
The CullHandler becomes the owner of the CullableObject pointer and is expected to delete it later.
Reimplemented in BinCullHandler, and DrawCullHandler.
Definition at line 42 of file cullHandler.cxx.
Referenced by BulletDebugNode::add_for_draw(), ShaderTerrainMesh::add_for_draw(), CallbackNode::add_for_draw(), ComputeNode::add_for_draw(), SpeedTreeNode::add_for_draw(), OccluderNode::cull_callback(), PlaneNode::cull_callback(), CullTraverser::draw_bounding_volume(), PipeOcclusionCullTraverser::end_traverse(), PT(), and NodeCullCallbackData::upcall().