Torque3D Documentation / _generateds / RenderBinManager

RenderBinManager

Engine/source/renderInstance/renderBinManager.h

The RenderBinManager manages and renders lists of MainSortElem, which is a light wrapper around RenderInst.

More...

Classes:

Private Types

Parent 

Public Friends

Protected Attributes

The list of additional render instance types this bin wants to process.

The primary render instance type this bin supports.

The render pass manager this bin is registered with.

Public Functions

RenderBinManager(const RenderInstType & ritype, F32 renderOrder, F32 processAddOrder)

Returns the primary render instance type.

Returns the render pass this bin is registered to.

Called when the object is removed from the sim.

setProcessAddOrder(F32 processAddOrder)
setRenderOrder(F32 renderOrder)

Public Static Functions

QSort callback function.

Protected Functions

Inlined utility function which gets the material from the RenderInst if available, otherwise, return NULL.

bool

A inlined helper method for testing if the next MeshRenderInst requires a new batch/pass.

Called from derived bins to add additional render instance types to be notified about.

Detailed Description

The RenderBinManager manages and renders lists of MainSortElem, which is a light wrapper around RenderInst.

Private Types

typedef SimObject Parent 

Public Friends

Protected Attributes

bool mBasicOnly 
Vector< MainSortElem > mElementList 
MaterialOverrideDelegate mMatOverrideDelegate 
Vector< RenderInstType > mOtherTypes 

The list of additional render instance types this bin wants to process.

F32 mProcessAddOrder 
RenderInstType mRenderInstType 

The primary render instance type this bin supports.

F32 mRenderOrder 
RenderPassManager * mRenderPass 

The render pass manager this bin is registered with.

Public Functions

RenderBinManager(const RenderInstType & ritype, F32 renderOrder, F32 processAddOrder)

~RenderBinManager()

addElement(RenderInst * inst)

Reimplemented by: afxRenderHighlightMgr, RenderDeferredMgr, RenderGlowMgr, RenderMeshMgr, RenderParticleMgr, RenderProbeMgr, RenderTranslucentMgr

clear()

Reimplemented by: afxZodiacGroundPlaneRenderer, afxZodiacMeshRoadRenderer, afxZodiacPolysoupRenderer, afxZodiacTerrainRenderer, AdvancedLightBinManager, RenderDeferredMgr, RenderParticleMgr, RenderPassStateBin, RenderTerrainMgr

DECLARE_CONOBJECT(RenderBinManager )

getMatOverrideDelegate()

getProcessAddOrder()

getRenderInstType()

Returns the primary render instance type.

getRenderOrder()

getRenderPass()

Returns the render pass this bin is registered to.

onRemove()

Reimplemented from: SimObject

Reimplemented by: RenderProbeMgr

render(SceneRenderState * state)

Reimplemented by: afxZodiacMeshRoadRenderer, afxZodiacPolysoupRenderer, afxZodiacTerrainRenderer, AdvancedLightBinManager, afxRenderHighlightMgr, afxZodiacGroundPlaneRenderer, ForcedMaterialMeshMgr, RenderDeferredMgr, RenderGlowMgr, RenderImposterMgr, RenderMeshMgr, RenderObjectMgr, RenderOcclusionMgr, RenderParticleMgr, RenderPassStateBin, RenderProbeMgr, RenderTerrainMgr, RenderTranslucentMgr

setProcessAddOrder(F32 processAddOrder)

setRenderOrder(F32 renderOrder)

sort()

Reimplemented by: afxZodiacGroundPlaneRenderer, afxZodiacMeshRoadRenderer, afxZodiacPolysoupRenderer, afxZodiacTerrainRenderer, AdvancedLightBinManager, RenderDeferredMgr, RenderParticleMgr, RenderPassStateBin, RenderTerrainMgr

Public Static Functions

cmpKeyFunc(const void * p1, const void * p2)

QSort callback function.

initPersistFields()

Protected Functions

getMaterial(RenderInst * inst)

Inlined utility function which gets the material from the RenderInst if available, otherwise, return NULL.

internalAddElement(RenderInst * inst)

Reimplemented by: RenderTerrainMgr

newPassNeeded(MeshRenderInst * ri, MeshRenderInst * nextRI)

A inlined helper method for testing if the next MeshRenderInst requires a new batch/pass.

notifyType(const RenderInstType & type)

Called from derived bins to add additional render instance types to be notified about.

setRenderPass(RenderPassManager * rpm)

setupSGData(MeshRenderInst * ri, SceneData & data)

Reimplemented by: RenderTranslucentMgr