IRenderEffect

Description

interface Tinman.Engine.Rendering.IRenderEffect
<TParameters out : RenderEffectParameters>

Base interface for classes that represent a render effect, implemented as a GPU program.

To use a render effect, perform these steps:

  1. Use Parameters to configure the render effect parameters. This may be done at any time.

  2. Call IBeginEnd.Begin before using the render effect. If the application has modified the raw state of the underlying render system outside of the scope of this interface, it is responsible for restoring the default state before calling this method. It should then refrain from modifying the raw state while the render effect is active.

  3. Call IRenderEffectBase.Pass to begin rendering for a specific render stage.

  4. Call IRenderEffectBase.Apply in order to apply modified render effect parameters.

  5. Call IBeginEnd.End after using the render effect. After ending a render effect, the raw state of the underlying render system may be different to the state before beginning the render effect. However, all bindings to GPU resources will have been cleared.

A render effect may only be used between calls to IBeginEnd.Begin and IBeginEnd.End.

Public / Attributes

Parameters


[Constant]
public attribute Parameters → (get)

value : TParameters

[not-null]
The render effect parameters.

The parameters of this render effect.