Class DrawContextResources
This is a class responsible to manage all draw context resources (material, effects, resourcesets...).
Implements
Inherited Members
Namespace: Evergine.Framework.Graphics
Assembly: Evergine.Framework.dll
Syntax
public class DrawContextResources : DisposableObject, IDisposable
Constructors
DrawContextResources(DrawContext)
Initializes a new instance of the DrawContextResources class.
Declaration
public DrawContextResources(DrawContext drawContext)
Parameters
Type | Name | Description |
---|---|---|
DrawContext | drawContext | The draw context. |
Fields
DrawContext
The associated draw context.
Declaration
public readonly DrawContext DrawContext
Field Value
Type | Description |
---|---|
DrawContext |
EffectResources
Draw effect collection.
Declaration
public Dictionary<Effect, DrawContextEffectResources> EffectResources
Field Value
Type | Description |
---|---|
Dictionary<Effect, DrawContextEffectResources> |
Properties
PerDrawCallCBufferCollection
Gets the per draw call CBuffer collection.
Declaration
public CBufferCollectionUpdater PerDrawCallCBufferCollection { get; }
Property Value
Type | Description |
---|---|
CBufferCollectionUpdater |
PerSceneCBufferCollection
Gets the per scene CBuffer collection.
Declaration
public CBufferCollectionUpdater PerSceneCBufferCollection { get; }
Property Value
Type | Description |
---|---|
CBufferCollectionUpdater |
PerViewCBufferCollection
Gets the per view CBuffer collection.
Declaration
public CBufferCollectionUpdater PerViewCBufferCollection { get; }
Property Value
Type | Description |
---|---|
CBufferCollectionUpdater |
Methods
CollectView()
Collect the materials.
Declaration
public void CollectView()
Destroy()
Destroy all resources of this instance.
Declaration
protected override void Destroy()
Overrides
GetDrawEffectResources(Effect)
Gets the effect resources.
Declaration
public DrawContextEffectResources GetDrawEffectResources(Effect effect)
Parameters
Type | Name | Description |
---|---|---|
Effect | effect | The effect. |
Returns
Type | Description |
---|---|
DrawContextEffectResources | The draw effect resources. |
Prepare(CommandBuffer)
Prepare all registered effects.
Declaration
public void Prepare(CommandBuffer commandBuffer)
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | commandBuffer | The command buffer. |
RegisterMaterialPass(MaterialPassResources)
Register an effect to create its Constant Buffers.
Declaration
public MaterialPassResourceSet RegisterMaterialPass(MaterialPassResources passResources)
Parameters
Type | Name | Description |
---|---|---|
MaterialPassResources | passResources | The material pass resources. |
Returns
Type | Description |
---|---|
MaterialPassResourceSet | The material pass resource set instance. |
UnregisterMaterialPass(MaterialPassResources)
Unregister an effect to create its Constant Buffers.
Declaration
public void UnregisterMaterialPass(MaterialPassResources passResources)
Parameters
Type | Name | Description |
---|---|---|
MaterialPassResources | passResources | The material pass resources. |