Class LightShadowMapShaderGroupDataBase
Provides basic functionality for shadow map shader groups with a single shader source and a filter based on the LightShadowType
public abstract class LightShadowMapShaderGroupDataBase : ILightShadowMapShaderGroupData
- Inheritance
-
objectLightShadowMapShaderGroupDataBase
- Implements
- Extension Methods
Constructors
LightShadowMapShaderGroupDataBase(LightShadowType)
public LightShadowMapShaderGroupDataBase(LightShadowType shadowType)
Parameters
shadowTypeLightShadowType
Properties
FilterMemberName
The first member name argument passed to the instantiated filter
protected virtual string FilterMemberName { get; }
Property Value
ShadowShader
public ShaderMixinSource ShadowShader { get; }
Property Value
- ShaderMixinSource
ShadowType
public LightShadowType ShadowType { get; }
Property Value
Methods
ApplyDrawParameters(RenderDrawContext, ParameterCollection, FastListStruct<LightDynamicEntry>, ref BoundingBoxExt)
public virtual void ApplyDrawParameters(RenderDrawContext context, ParameterCollection parameters, FastListStruct<LightDynamicEntry> currentLights, ref BoundingBoxExt boundingBox)
Parameters
contextRenderDrawContextparametersParameterCollectioncurrentLightsFastListStruct<LightDynamicEntry>boundingBoxBoundingBoxExt
ApplyShader(ShaderMixinSource)
public virtual void ApplyShader(ShaderMixinSource mixin)
Parameters
mixinShaderMixinSource
ApplyViewParameters(RenderDrawContext, ParameterCollection, FastListStruct<LightDynamicEntry>)
public virtual void ApplyViewParameters(RenderDrawContext context, ParameterCollection parameters, FastListStruct<LightDynamicEntry> currentLights)
Parameters
contextRenderDrawContextparametersParameterCollectioncurrentLightsFastListStruct<LightDynamicEntry>
CreateShaderSource(int)
Creates the shader source that performs shadowing
public abstract ShaderClassSource CreateShaderSource(int lightCurrentCount)
Parameters
lightCurrentCountint
Returns
- ShaderClassSource
UpdateLayout(string)
public virtual void UpdateLayout(string compositionName)
Parameters
compositionNamestring
UpdateLightCount(int, int)
public virtual void UpdateLightCount(int lightLastCount, int lightCurrentCount)