Skip to content

GFX.Feature

Name Mandatory Description Default Type
⬅️ Input The input of this shard is ignored. None
Output ➡️ The feature object for use in a rendering pass. GFX.Feature
Shaders No A list of shader entry points none None[{Any}]
ComposeWith No Any table of values that need to be injected into this feature's shaders none None{Any}Var({Any})
State No The table of render state flags to override none None{Any}Var({Any})
ViewGenerators No A collection of callbacks that will be run to generate per-view shader parameters during rendering. These parameters are added to the view buffer. none NoneWire[Wire][Shard][[Shard]]None
DrawableGenerators No A collection of callbacks that will be run to generate per-drawable shader parameters during rendering none NoneWire[Wire][Shard][[Shard]]None
Params No The parameters to add to the object buffer and expose to shaders, these default values can later be modified by the Params parameter in GFX.Material or GFX.Drawable none None{GFX.Texture2D GFX.TextureCube GFX.Buffer [Float4](4) Float4 Float3 Float2 Float Int Int2 Int3 Int4 {Any} Var(GFX.Texture2D GFX.TextureCube GFX.Buffer [Float4](4) Float4 Float3 Float2 Float Int Int2 Int3 Int4 {Any})}Var({GFX.Texture2D GFX.TextureCube GFX.Buffer [Float4](4) Float4 Float3 Float2 Float Int Int2 Int3 Int4 {Any} Var(GFX.Texture2D GFX.TextureCube GFX.Buffer [Float4](4) Float4 Float3 Float2 Float Int Int2 Int3 Int4 {Any})})
BlockParams No Custom bindings to expose to shaders none None{Any}
RequiredAttributes No The parameters to expose to shaders, these default values can later be overriden by materials or drawable Params none None[RequiredAttributes]
UniqueVariables No List of variables that should be made unique none None[String]

This shard creates a feature object based on what was provided in the different parameters.

Details

A Feature can be thought of as an extension or plugin to the rendering logic.

A Feature may have various components:

  • Blend State (Alpha, Additive, ...)
  • Depth Testing
  • Vertex/Fragment shaders

For a more extensive description about shaders, see Shaders.

Features can be used in various locations: - Attached to a GFX.DrawablePass - Attached to a GFX.EffectPass