Table of Contents

Namespace Stride.Rendering

Classes

AssemblyEffectKeysAttribute

Assembly attribute used to mark assembly that has been preprocessed using the ParameterKeyProcessor. Assemblies without this attribute will have all of their type members tagged with EffectKeysAttribute scanned for ParameterKey.

BackToFrontSortMode

Sort elements according to the pattern: [RenderFeature Sort Key 8 bits] [Distance back to front 32 bits] [RenderObject states 24 bits]

BackgroundCubemapShaderKeys
BackgroundShaderKeys
BackgroundVelocityKeys
CameraComponentRendererExtensions
CameraCubeKeys
CameraKeys

Keys used by transformations.

ComputeColorParameterKeys
ComputeColorTextureDynamicScaledOffsetKeys
DefaultEffectMixinProvider
DepthBaseKeys
DitherKeys
DrawEffect

The base class in charge of applying and drawing an effect.

DynamicEffectInstance
EffectInstance

A dynamic effect instance, including its values and resources.

EffectObjectPropertyDefinition<T>
EffectParameterUpdaterLayout

Defines a layout used by EffectParameterUpdater to update several ResourceGroup from a ParameterCollection.

EffectSelector
EffectSystem

The effect system.

EffectSystemExtensions

Extensions for EffectSystem

FrameResourceGroupLayout

Implementation of RenderSystemResourceGroupLayout specifically for PerFrame cbuffer of RenderSystem.

FrontToBackSortMode

Sort elements according to the pattern: [RenderFeature Sort Key 8 bits] [Distance front to back 16 bits] [RenderObject states 32 bits]

GlobalKeys
GlobalVRKeys
GraphicsRendererCollectionBase<T>

A collection of IGraphicsRenderer that is itself a IGraphicsRenderer handling automatically Initialize(RenderContext) and Unload().

GraphicsRendererCollection<T>

A collection of IGraphicsRenderer that is itself a IGraphicsRenderer handling automatically Initialize(RenderContext) and Unload().

HighlightShaderKeys
InstancingRenderFeature
LightingKeys

Keys used for lighting.

LogicalGroupExtensions

Various extension methods usedful to use with LogicalGroup.

Material

A compiled version of MaterialDescriptor.

MaterialAssetKeys

Defines keys associated with mesh used for compiling assets.

MaterialFrontBackBlendShaderKeys
MaterialInstance

A Material instance.

MaterialPass

Describes a single rendering pass of a Material.

MaterialPassCollection

A collection of MaterialPass.

Mesh
MeshDraw
MeshKeys

Defines keys associated with mesh used for compiling assets.

MeshPipelineProcessor

Pipeline processor for RenderMesh with materials. It will set blend and depth-stencil state for transparent objects, and properly set culling according to material and negative scaling.

MeshRenderFeature

Renders RenderMesh.

MeshSkinningDefinition

Describes skinning for a Mesh, through a collection of MeshBoneDefinition.

MeshTransparentRenderStageSelector
MeshVelocityKeys
MeshVelocityRenderFeature

Output per-pixel motion vectors to a separate render target

Model

Collection of Mesh, each one usually being a different LOD of the same Model. The effect system will select the appropriate LOD depending on distance, current pass, and other effect-specific requirements.

ModelRenderProcessor
ObjectParameterKeySerializer<T>
ObjectParameterKey<T>

An object (or boxed value) effect key, usually for use by shaders (.sdsl).

ObjectPropertyDefinition<T>
ParameterCollection

Manage several effect parameters (resources and data). A specific data and resource layout can be forced (usually by the consuming effect).

ParameterCollection.Serializer
ParameterCollectionExtensions

Extensions for ParameterCollection.

ParameterCollectionLayout
ParameterKey

Key of an effect parameter.

ParameterKeyValueMetadata
ParameterKeyValueMetadata<T>

Metadata used for ParameterKey

ParameterKey<T>

Key of an gereric effect parameter.

ParameterKeys
ParticleBaseKeys
ParticleUtilitiesKeys
PermutationParameterKeySerializer<T>
PermutationParameterKey<T>

An effect permutation key, usually for use by effects (.sdfx).

PickingShaderKeys
PipelineProcessor
ProfilingKeys

Various ProfilingKey used to measure performance across some part of the effect system.

QueryManager
RenderContext

Rendering context.

RenderDrawContext

Rendering context used during Draw(RenderDrawContext).

RenderEffect

Instantiation of an Effect for a given EffectObjectNodeReference.

RenderEffectReflection

Describes an effect as used by a RenderNode.

RenderFeature

Entry-point for implementing rendering feature.

RenderGroupMaskExtensions

Extensions for RenderGroupMask

RenderInstancing

Contains information for model instancing. Used by the InstancingRenderFeature

RenderMesh

Used by MeshRenderFeature to render a Mesh.

RenderModel

Contains information related to the Model so that the RenderMesh can access it.

RenderObject

Describes something that can be rendered by a RootRenderFeature.

RenderObjectCollection

A collection of RenderObject.

RenderPropertyDefinition<T>
RenderStage

Represents a way to instantiate a given RenderObject for rendering, esp. concerning effect selection and permutation.

RenderStageFilter

Defines a way to filter RenderObject.

RenderStageSelector

Defines how a RenderObject gets assigned to specific RenderStage.

RenderSystem

Facility to perform rendering: extract rendering data from scene, determine effects and GPU states, compute and prepare data (i.e. matrices, buffers, etc...) and finally draw it.

RenderSystemResourceGroupLayout

Implementation of ResourceGroupLayout specifically for RenderSystem use (contains some extra information).

RenderTargetKeys

Keys used for render target settings.

RenderView

Defines a view used during rendering. This is usually a frustum and some camera parameters.

RenderViewFeature

Describes a specific RenderView and RootRenderFeature combination.

RendererBase

Base implementation of IGraphicsRenderer

RendererCoreBase

Base implementation of IGraphicsRenderer

ResourceResolver

Resolves a render target from one render pass to be used as an input resource to another render pass

RootEffectRenderFeature

A root render feature that can manipulate effects.

RootRenderFeature

A top-level renderer that work on a specific kind of RenderObject, such as Mesh, Particle, Sprite, etc...

SelectedSpriteShaderKeys
ShadowMeshPipelineProcessor

Pipline processor for RenderMesh that cast shadows, to properly disable culling and depth clip.

SimpleGroupToRenderStageSelector
Skeleton

Describes hiderarchical nodes in a flattened array.

SkeletonUpdater

Performs hierarchical updates for a given Model.

SkinningRenderFeature

Computes and uploads skinning info.

SortMode

Defines a way to sort RenderObject.

SortModeDistance

Helper class to sort objects based on distance.

Sprite3DBaseKeys
SpriteAlphaCutoffKeys
SpriteBaseKeys
SpriteEffectExtTextureKeys
SpriteEffectExtTextureRegularKeys
SpriteEffectKeys
SpriteSignedDistanceFieldFontShaderKeys
StateChangeSortMode

Sort elements according to the pattern: [RenderFeature Sort Key 8 bits] RenderObject states 32 bits] [Distance front to back 16 bits]

StaticObjectPropertyDefinition<T>
StrideEffectBaseKeys
StrideTessellationMethodExtensions
SubRenderFeature

A render feature used inside another one (i.e. RenderFeatures.

TemporalAntiAliasShaderKeys
TexturingKeys
TransformRenderFeature

A render feature that computes and upload World, View and Projection matrices for each views and for each objects.

TransformationInstancingKeys
TransformationKeys

Keys used by transformations.

TransformationSkinningKeys
TransparentRenderStageSelector
ValueParameterKeySerializer<T>
ValueParameterKey<T>

A blittable value effect key, usually for use by shaders (.sdsl).

ViewObjectPropertyDefinition<T>
ViewPropertyDefinition<T>
ViewResourceGroupLayout

Implementation of RenderSystemResourceGroupLayout specifically for PerView cbuffer of RenderSystem.

VisibilityGroup

Represents a group of visible RenderObject.

VolumeMinMaxShaderKeys
WireframePipelineProcessor

Structs

ActiveRenderStage
ConstantBufferOffsetReference

Handle used to query what's the actual offset of a given variable in a constant buffer, through GetConstantBufferOffset(ConstantBufferOffsetReference).

EffectDescriptorSetReference

Handle used to query what's the actual offset of a given variable in a constant buffer, through GetConstantBufferOffset(ConstantBufferOffsetReference).

EffectObjectNode

Represents a RenderObject drawn with a specific RenderEffect, with attached properties.

EffectObjectNodeReference
EffectObjectPropertyData<T>
EffectObjectPropertyKey<T>
EffectParameterUpdater

Helper class to update several ResourceGroup from a ParameterCollection.

EffectPermutationSlot

Defines an effect permutation slot for a RootRenderFeature.

EffectValidator

How to use: BeginEffectValidation(); ValidateParameter(key1, value1); ValidateParameter(key2, value2); ... EndEffectValidation(); //returns true if same as last time, false if something changed You can use EffectValues to actually compile the effect.

InstancingData
LogicalGroup

Defines a group of descriptors and cbuffer range that are updated together. It can be declared in shader using the syntax cbuffer PerView.LogicalGroupName (also works with rgroup).

LogicalGroupReference

Handle used to query logical group information.

MeshBoneDefinition

Describes a bone cluster inside a Mesh.

ModelNodeDefinition

Describes a single transformation node, usually in a Model node hierarchy.

ModelNodeTransformation
ObjectNode

Represents a RenderObject and allows to attach properties every frame.

ObjectNodeReference
ObjectParameterAccessor<T>
ObjectPropertyData<T>
ObjectPropertyKey<T>
ParameterCollection.Accessor
ParameterCollection.CompositionCopier
ParameterCollection.Copier
ParameterKeyInfo
PermutationParameter<T>
PipelinePluginContext

Context used by PipelinePluginManager.

QueryManager.Scope
RenderContext.RenderOutputRestore
RenderContext.RenderViewRestore
RenderContext.ViewportRestore
RenderDataHolder

Holds associated data used during rendering.

RenderDrawContext.RenderTargetRestore
RenderModel.MaterialInfo
RenderNode

Represents an single render operation of a RenderObject from a specific view with a specific effect, with attached properties.

RenderNodeFeatureReference
RenderNodeReference
RenderPropertyData<T>
RenderPropertyKey<T>
RenderViewFeatureStage

Describes a specific RenderView, RootRenderFeature and RenderStage combination.

RenderViewStage

Stage-specific data for a RenderView.

ResourceGroupEntry
SortKey

Sort key used

StaticObjectNodeReference
StaticObjectPropertyData<T>
StaticObjectPropertyKey<T>
TransformTRS

Stores transformation in a TRS format (Position, Rotation and Scale).

ValueParameter<T>
ViewNodeReference
ViewObjectNode

Represents a RenderObject from a specific view.

ViewObjectNodeReference
ViewObjectPropertyData<T>
ViewObjectPropertyKey<T>
ViewPropertyData<T>
ViewPropertyKey<T>
ViewportState

Interfaces

IEffectMixinProvider

Defines the interface to provide an effect mixin for a CameraRendererMode.

IEntityComponentRenderProcessor

An EntityProcessor dedicated for rendering.

IGraphicsRenderer

A graphics renderer.

IGraphicsRendererBase
IGraphicsRendererCore

The core interface of a renderer.

IImageEffectRenderer

Renderer interface for a end-user ImageEffect accessible from SceneEffectRenderer. See remarks.

IModelInstance

Instance of a model with its parameters.

IRenderCollector

Enums

CameraCullingMode

Culling mode of a RenderView.

ClearRendererFlags

Flags used to clear a render frame.

DataType
ModelNodeFlags

Flags describing state of a ModelNodeDefinition.

ParameterKeyType
RenderEffectState

Describes the state of a RenderEffect.

RenderGroup

An entity group.

RenderGroupMask

A mask for RenderGroup.

RenderViewFlags
ResolutionStretch

Enumerates the different ways to interpret a visual resolution value.

StrideTessellationMethod

Describe the different tessellation methods used in Stride.

Delegates

RootEffectRenderFeature.ComputeFallbackEffectDelegate