|
RenderPostProcessingRenderingStep Class |
RenderPostProcessing renders the post processing effects.
Inheritance Hierarchy Namespace: Ab3d.DirectXAssembly: Ab3d.DXEngine (in Ab3d.DXEngine.dll) Version: 7.1.9105.2048 (1.0.0.0)
Syntax public class RenderPostProcessingRenderingStep : RenderingStepBase
The RenderPostProcessingRenderingStep type exposes the following members.
Constructors Properties | Name | Description |
---|
| AdditionalBackBuffer |
Gets an additional BackBuffer that is used when more than one post process is rendered.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| AdditionalBackBufferDescription |
Gets a Description of the AdditionalBackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| AdditionalRenderTargetView |
Gets a RenderTargetView for the AdditionalBackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| AdditionalShaderResourceView |
Gets a ShaderResourceView for the AdditionalBackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| DestinationBackBuffer |
Gets a destination BackBuffer.
This value can be set with the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) or InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) methods.
|
| DestinationBackBufferDescription |
Gets a Description of the DestinationBackBuffer.
This value can be set with the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) or InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) methods.
|
| DestinationRenderTargetView |
Gets a RenderTargetView for the DestinationBackBuffer.
This value can be set with the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) or InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) methods.
|
| PostProcesses |
Gets or sets the post processes that will be rendered by this RenderPostProcessingRenderingStep.
|
| RestoreOriginalRenderTargets |
When true the render targets that were used before starting post processes are restored (this may require additional copying of back buffers).
When false (by default) then new render targets (without MSAA) and bound without depth stencil buffer may be set after post processes are executed.
|
| SourceBackBuffer |
Gets a source BackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| SourceBackBufferDescription |
Gets a Description of the sourceBackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| SourceRenderTargetView |
Gets a RenderTargetView for the SourceBackBuffer.
This value can be set with the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
|
| SourceShaderResourceView |
Gets a ShaderResourceView for the SourceBackBuffer.
This value can be set with the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) or InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) methods.
|
| SuperSamplingCount |
Gets the super-sampling count of the buffers used for processing steps.
|
TopMethods Remarks RenderPostProcessing renders the post processing effects that are defined in the PostProcesses list.
Before using the RenderPostProcessingRenderingStep, the PostProcesses list must be set to the list of post processes.
Also the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) or the InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method must be called to set the resources required to run the post processes.
The PostProcesses list and the resources are usually automatically set in the PreparePostProcessingRenderingStep that sets the resources based on the PostProcesses list on the DXScene object.
The RenderPostProcessingRenderingStep can be also used without PreparePostProcessingRenderingStep. In this case the resources must be manually set.
When rendering only one post process, the InitializeResourcesForSinglePostProcess(ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) can be called.
This method requires only sourceShaderResourceView, destinationBackBuffer, destinationBackBufferDescription and destinationRenderTargetView.
In this case the sourceShaderResourceView is rendered directly to the destinationBackBuffer.
When having more than one post process the RenderPostProcessingRenderingStep much more resources that must be initialized with InitializeResourcesForMultiplePostProcesses(Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, ShaderResourceView, Texture2D, Texture2DDescription, RenderTargetView, Int32) method.
This method can be also used for only one post process.
The first post process will use SourceShaderResourceView and will render to AdditionalRenderTargetView (from source buffer to additional buffer).
Than AdditionalShaderResourceView will be used as source and the next post process will render to SourceRenderTargetView (from additional buffer to source buffer).
Than the source and destination will change after each post process. Except last post process that is always rendered to DestinationRenderTargetView.
See Also