Super |
public class SuperShader : SharedDXDeviceResource, IStandardShader
The SuperShader type exposes the following members.
Name | Description | |
---|---|---|
SuperShader | Initializes a new instance of the SuperShader class |
Name | Description | |
---|---|---|
LastUsedFrameNumber | Gets frame number in which this shader was used. | |
ShadowDepthBias | Gets or sets a float value that offsets the depth of the lights (distance from the lights to the object) and can help reduce the show artifacts in the corners. The value that works best need to be set based on the size of the scene. Default value is 0 that does not apply any bias. | |
ShadowThreshold | Gets or sets a float value that helps prevent light bleeding (having areas that should be in shadow fully illuminated) for variance shadow mapping. | |
ShadowTreshold | Obsolete. Gets or sets a float value that helps prevent light bleeding (having areas that should be in shadow fully illuminated) for variance shadow mapping. |
Name | Description | |
---|---|---|
ApplyMaterial | Sets the content of the constant buffers based on the specified Material and other properties. | |
ApplyPerFrameSettings | Sets per frame settings for this effect (this sets camera, lights and other per frame settings). | |
ApplyRenderingPass | Prepares the lights constant buffer for the specified rendering pass. | |
GetRequiredRenderingPassesCount | Returns number of rendering passes that are required to render the specified lights. | |
PreloadShaders | Loads all the shaders | |
ResetRenderableGeometryMaterialFlagsValue | When RenderableGeometry objects are rendered in the same order in each frame, the RenderableGeometry.MaterialFlags value specifies how similar the material is to the previous object (for example if diffuse part is the same, then many color checks can be skipped). But when the order of rendering is changed or if we start rendering from the middle of the RenderingQueue, then we need to reset the cached value for the first rendered RenderableGeometry so that all the checks are done agine. This method does that. | |
SetCustomPerFrameConstantBuffers | SetCustomPerFrameConstantBuffers sets custom perFrameCameraConstantsBuffer and perFrameLightsConstantBuffer. Note that the constant buffers need to be exactly the same as the SuperShader expects. | |
SetShadowMappingParameters | SetShadowMappingParameters sets parameters needed for shadow mapping. This method must be called before the ApplyPerFrameSettings(ICamera, IListILight, RenderingContext) method. Shadow rendering is enabled only after the next call to ApplyPerFrameSettings and before another ApplyPerFrameSettings call. |
Name | Description | |
---|---|---|
MaxLights | Maximum number of lights that can be rendered by this SuperShader (Ambient light is not counted). | |
MaxShadowLights | Gets the maximum number of lights that can cast shadow. |