Click or drag to resize
AB4D logo

DynamicPlanarShadowRenderingProvider Class

DynamicPlanarShadowRenderingProvider provides support for rendering dynamic and soft shadows to a texture that can be shown as a material on a 3D plane.
Inheritance Hierarchy
SystemObject
  Ab3d.DirectXDXResourceBase
    Ab3d.DirectXDisposableDXResource
      Ab3d.DirectXDXSceneResource
        Ab3d.DirectXShadowRenderingProviderBase
          Ab3d.DirectXDynamicPlanarShadowRenderingProvider

Namespace: Ab3d.DirectX
Assembly: Ab3d.DXEngine (in Ab3d.DXEngine.dll) Version: 7.1.9105.2048 (1.0.0.0)
Syntax
C#
public class DynamicPlanarShadowRenderingProvider : ShadowRenderingProviderBase

The DynamicPlanarShadowRenderingProvider type exposes the following members.

Constructors
 NameDescription
Public methodDynamicPlanarShadowRenderingProvider(Int32, Int32) Constructor
Public methodDynamicPlanarShadowRenderingProvider(Texture2D, Texture2DDescription, ShaderResourceView, RenderTargetView) Constructor that provides a custom DirectX 11 texture where the shadow will be rendered to.
Top
Properties
 NameDescription
Public propertyBlurAmount Amont of blurring that is applied to the shadow texture. Default value is 2.
Public propertyBlurFilterSize Size of the blur filer - number of pixels that are read to get the color produces by this post-process. Possible values for BlurFilterSize are: 5, 7, 9, 11, 13, 15. Default value is 9.
Public propertyBlurPostProcessingRenderingStep Gets a RenderPostProcessingRenderingStep that blurs the normal-depth texture.
Public propertyDynamicPlanarShadowRenderingStepsGroup Gets a RenderingStepsGroup that groups rendering step that render the soft planar shadow.
Public propertyIsTransparentShadow When true (by default), then shows is rendered with transparent background and also shadow is semi-transparent - full shadow is opaque, half shadow has alpha values set to 0.5.
Public propertyMinDepth Depth values lower than this value will be rendered as fully in shadow. The valid range of this value is between 0 and 1. Default value is 0.1.
Public propertyPlaneHeightDirection Height direction vector of the 3D plane that will show the shadow material.
Public propertyPlaneNormal Normal vector of the 3D plane that will show the shadow material.
Public propertyRenderDepthTextureRenderingStep Gets a RenderObjectsRenderingStep that renders the objects from the ShadowCenterPosition to a normal-depth texture.
Public propertyRenderShadowFromDepthTextureRenderingStep Gets a RenderDepthShadowRenderingStep that renders RGBA shadow texture from the normal-depth texture.
Public propertyShadowCenterPosition Position that defines from where the shadow objects will be rendered - the distance from the plane that goes through ShadowCenterPosition defines the amount of shadow.
Public propertyShadowDarkness Darkness of the shadow. Default values is 1. Smaller values decreases the amount of shadow.
Public propertyShadowMapHeight Gets an integer value that represents the height of a shadow depth map texture. This value is set by the constructor that takes shadowMapSize or from the constructor that takes back buffers.
Public propertyShadowMapWidth Gets an integer value that represents the width of a shadow depth map texture. This value is set by the constructor that takes shadow map size or from the constructor that takes back buffers.
Public propertyShadowRenderTargetView Gets the RenderTargetView of the shadow texture.
Public propertyShadowShaderResourceView Gets the ShaderResourceView of the shadow texture.
Public propertyShadowTexture Gets ShadowTexture as Texture2D
Public propertyShadowTextureDescription Gets the Texture2DDescription of the shadow texture.
Public propertyShadowVisibilityDistance Gets the max distance in the world coordinates when the shadow will be still visible. Objects farther away from the ShadowCenterPosition will not show shadow. When set to 0, then world's bounding box height is used - PlaneNormal must be (0,1,0).
Public propertyShadowWorldSize Size in world coordinate of the 3D plane that will show the shadow material.
Top
Methods
 NameDescription
Public methodEnableForOneFrame EnableForOneFrame method enables this DynamicPlanarShadowRenderingProvider only for the next frame. This will render the ShadowTexture and then stop rendering the shadow texture. This can be used when a static 3D objects is shown and improves performance because shadow texture is not updated to the same shadow.
Top
Fields
 NameDescription
Public fieldStatic memberDynamicPlanarShadowRenderingStepsGroupName Name of the DynamicPlanarShadowRenderingStepsGroup that contains rendering steps that render the soft planar shadow.
Public fieldStatic memberRenderDepthTextureRenderingStepName Name of the RenderDepthTextureRenderingStep that renders the depth of the objects from the shadow's center position.
Public fieldStatic memberRenderShadowFromDepthTextureRenderingStepRenderingStepName Name of the RenderShadowFromDepthTextureRenderingStep that renders the depth texture to a shadow with RBGA texture.
Top
See Also