C# 클래스 Axiom.Graphics.RenderQueue

Class to manage the scene object rendering queue.
Objects are grouped by material to minimize rendering state changes. The map from material to renderable object is wrapped in a class for ease of use.

This class includes the concept of 'queue groups' which allows the application adding the renderable to specifically schedule it so that it is included in a discrete group. Good for separating renderables into the main scene, backgrounds and overlays, and also could be used in the future for more complex multipass routines like stenciling.

파일 보기 프로젝트 열기: WolfgangSt/axiom 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
defaultGroup RenderQueueGroupID
defaultRenderablePriority ushort
renderGroups SortedList
shadowCastersCannotBeReceivers bool
splitNoShadowPasses bool
splitPassesByLightingType bool

공개 메소드들

메소드 설명
AddRenderable ( IRenderable item ) : void

Overloaded method.

AddRenderable ( IRenderable item, RenderQueueGroupID groupID ) : void

Overloaded method.

AddRenderable ( IRenderable item, ushort priority ) : void

Overloaded method.

AddRenderable ( IRenderable renderable, ushort priority, RenderQueueGroupID groupID ) : void

Adds a renderable item to the queue.

Clear ( ) : void

Clears all

Clear ( bool dispose ) : void

Clears all

GetQueueGroup ( RenderQueueGroupID queueID ) : RenderQueueGroup

Get a render queue group.

New queue groups are registered as they are requested, therefore this method will always return a valid group.

RenderQueue ( ) : System

Default constructor.

비공개 메소드들

메소드 설명
GetQueueGroupByIndex ( int index ) : RenderQueueGroup

GetRenderQueueGroupID ( int index ) : RenderQueueGroupID

메소드 상세

AddRenderable() 공개 메소드

Overloaded method.
public AddRenderable ( IRenderable item ) : void
item IRenderable
리턴 void

AddRenderable() 공개 메소드

Overloaded method.
public AddRenderable ( IRenderable item, RenderQueueGroupID groupID ) : void
item IRenderable
groupID RenderQueueGroupID
리턴 void

AddRenderable() 공개 메소드

Overloaded method.
public AddRenderable ( IRenderable item, ushort priority ) : void
item IRenderable
priority ushort
리턴 void

AddRenderable() 공개 메소드

Adds a renderable item to the queue.
public AddRenderable ( IRenderable renderable, ushort priority, RenderQueueGroupID groupID ) : void
renderable IRenderable IRenderable object to add to the queue.
priority ushort
groupID RenderQueueGroupID Group to add the item to.
리턴 void

Clear() 공개 메소드

Clears all
public Clear ( ) : void
리턴 void

Clear() 공개 메소드

Clears all
public Clear ( bool dispose ) : void
dispose bool
리턴 void

GetQueueGroup() 공개 메소드

Get a render queue group.
New queue groups are registered as they are requested, therefore this method will always return a valid group.
public GetQueueGroup ( RenderQueueGroupID queueID ) : RenderQueueGroup
queueID RenderQueueGroupID ID of the queue group to retreive.
리턴 RenderQueueGroup

RenderQueue() 공개 메소드

Default constructor.
public RenderQueue ( ) : System
리턴 System

프로퍼티 상세

defaultGroup 보호되어 있는 프로퍼티

Default render group for this queue.
protected RenderQueueGroupID defaultGroup
리턴 RenderQueueGroupID

defaultRenderablePriority 보호되어 있는 프로퍼티

Default priority of items added to the render queue.
protected ushort defaultRenderablePriority
리턴 ushort

renderGroups 보호되어 있는 프로퍼티

Cached list of render groups, indexed by RenderQueueGroupID.
protected SortedList renderGroups
리턴 SortedList

shadowCastersCannotBeReceivers 보호되어 있는 프로퍼티

protected bool shadowCastersCannotBeReceivers
리턴 bool

splitNoShadowPasses 보호되어 있는 프로퍼티

protected bool splitNoShadowPasses
리턴 bool

splitPassesByLightingType 보호되어 있는 프로퍼티

Should passes be split by their lighting stage?
protected bool splitPassesByLightingType
리턴 bool