15 #include "drawCullHandler.h"
16 #include "cullableObject.h"
18 #include "transformState.h"
19 #include "renderState.h"
20 #include "graphicsStateGuardianBase.h"
21 #include "config_pgraph.h"
22 #include "cullTraverser.h"
35 bool force = !_gsg->get_effective_incomplete_render();
38 if (object->
munge_geom(_gsg, _gsg->get_geom_munger(object->_state, current_thread), traverser, force)) {
40 draw(
object, _gsg, force, current_thread);
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...
The smallest atom of cull.
bool munge_geom(GraphicsStateGuardianBase *gsg, GeomMunger *munger, const CullTraverser *traverser, bool force)
Uses the indicated GeomMunger to transform the geom and/or its vertices.
Thread * get_current_thread() const
Returns the currently-executing thread object, as passed to the CullTraverser constructor.
A thread; that is, a lightweight process.
This object performs a depth-first traversal of the scene graph, with optional view-frustum culling...
virtual void record_object(CullableObject *object, const CullTraverser *traverser)
This callback function is intended to be overridden by a derived class.