15 #include "cullBinUnsorted.h"
16 #include "cullHandler.h"
17 #include "graphicsStateGuardianBase.h"
18 #include "pStatTimer.h"
31 for (oi = _objects.begin(); oi != _objects.end(); ++oi) {
56 _objects.push_back(
object);
67 PStatTimer timer(_draw_this_pcollector, current_thread);
69 for (oi = _objects.begin(); oi != _objects.end(); ++oi) {
81 void CullBinUnsorted::
82 fill_result_graph(CullBin::ResultGraphBuilder &builder) {
83 Objects::const_iterator oi;
84 for (oi = _objects.begin(); oi != _objects.end(); ++oi) {
86 builder.add_object(
object);
A collection of Geoms and their associated state, for a particular scene.
A specific kind of CullBin that does not reorder the geometry; it simply passes it through to the GSG...
static CullBin * make_bin(const string &name, GraphicsStateGuardianBase *gsg, const PStatCollector &draw_region_pcollector)
Factory constructor for passing to the CullBinManager.
A lightweight class that can be used to automatically start and stop a PStatCollector around a sectio...
A lightweight class that represents a single element that may be timed and/or counted via stats...
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.
virtual void draw(bool force, Thread *current_thread)
Draws all the objects in the bin, in the appropriate order.
This is a base class for the GraphicsStateGuardian class, which is itself a base class for the variou...
A thread; that is, a lightweight process.
TypeHandle is the identifier used to differentiate C++ class types.
virtual void add_object(CullableObject *object, Thread *current_thread)
Adds a geom, along with its associated state, to the bin for rendering.