|
Public Types |
| typedef std::vector< RenderLeaf * > | RenderLeafList |
| typedef std::vector< StateGraph * > | StateGraphList |
typedef std::map< int, osg::ref_ptr<
RenderBin > > | RenderBinList |
| enum | SortMode { SORT_BY_STATE,
SORT_BY_STATE_THEN_FRONT_TO_BACK,
SORT_FRONT_TO_BACK,
SORT_BACK_TO_FRONT
} |
Public Member Functions |
| | RenderBin () |
| | RenderBin (SortMode mode) |
| | RenderBin (const RenderBin &rhs, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) |
| | Copy constructor using CopyOp to manage deep vs shallow copy.
|
| virtual osg::Object * | cloneType () const |
| | Clone the type of an object, with Object* return type.
|
| virtual osg::Object * | clone (const osg::CopyOp ©op) const |
| virtual bool | isSameKindAs (const osg::Object *obj) const |
| virtual const char * | libraryName () const |
| | return the name of the object's library.
|
| virtual const char * | className () const |
| | return the name of the object's class type.
|
| virtual void | reset () |
| RenderBin * | getParent () |
| const RenderBin * | getParent () const |
| RenderStage * | getStage () |
| const RenderStage * | getStage () const |
| int | getBinNum () const |
| StateGraphList & | getStateGraphList () |
| const StateGraphList & | getStateGraphList () const |
| RenderBinList & | getRenderBinList () |
| const RenderBinList & | getRenderBinList () const |
| RenderLeafList & | getRenderLeafList () |
| const RenderLeafList & | getRenderLeafList () const |
| RenderBin * | find_or_insert (int binNum, const std::string &binName) |
| void | addStateGraph (StateGraph *rg) |
| virtual void | sort () |
| virtual void | sortImplementation () |
| void | setSortMode (SortMode mode) |
| SortMode | getSortMode () const |
| virtual void | sortByState () |
| virtual void | sortByStateThenFrontToBack () |
| virtual void | sortFrontToBack () |
| virtual void | sortBackToFront () |
| void | setSortCallback (SortCallback *sortCallback) |
| SortCallback * | getSortCallback () |
| const SortCallback * | getSortCallback () const |
| virtual void | draw (osg::State &state, RenderLeaf *&previous) |
| virtual void | drawImplementation (osg::State &state, RenderLeaf *&previous) |
| void | setDrawCallback (DrawCallback *drawCallback) |
| DrawCallback * | getDrawCallback () |
| const DrawCallback * | getDrawCallback () const |
| bool | getStats (Statistics *primStats) |
| | Extract stats for current draw list.
|
| void | getPrims (Statistics *primStats) |
| bool | getPrims (Statistics *primStats, int nbin) |
| void | copyLeavesFromStateGraphListToRenderLeafList () |
Static Public Member Functions |
| RenderBin * | createRenderBin (const std::string &binName) |
| RenderBin * | getRenderBinPrototype (const std::string &binName) |
| void | addRenderBinPrototype (const std::string &binName, RenderBin *proto) |
| void | removeRenderBinPrototype (RenderBin *proto) |
| void | setDefaultRenderBinSortMode (SortMode mode) |
| SortMode | getDefaultRenderBinSortMode () |
Protected Member Functions |
| virtual | ~RenderBin () |
Protected Attributes |
| int | _binNum |
| RenderBin * | _parent |
| RenderStage * | _stage |
| RenderBinList | _bins |
| StateGraphList | _stateGraphList |
| RenderLeafList | _renderLeafList |
| SortMode | _sortMode |
| osg::ref_ptr< SortCallback > | _sortCallback |
| osg::ref_ptr< DrawCallback > | _drawCallback |
Renderbin contains geometries to be rendered as a group, renderbins are rendered once each. They can improve efficiency or use different rendering algorithms. A renderBin can contain further renderBins producing a tree hierarchy of renderBins.