
Mirror Engine API / PostEffect
Class: PostEffect
Base class for all post effects. Post effects take a a render target as input apply effects to it and then render the result to an output render target or the screen if no output is specified.
Constructors
new PostEffect()
new PostEffect(graphicsDevice: GraphicsDevice): PostEffect
Create a new PostEffect instance.
Parameters
graphicsDevice
GraphicsDevice
The graphics device of the application.
Returns
Properties
device
device: GraphicsDevice
The graphics device of the application.
needsDepthBuffer
needsDepthBuffer: boolean
The property that should to be set to true
(by the custom post effect) if a depth map
is necessary (default is false).
quadVertexShader
static quadVertexShader: string;
A simple vertex shader used to render a quad, which requires 'vec2 aPosition' in the vertex buffer, and generates uv coordinates vUv0 for use in the fragment shader.
Methods
drawQuad()
drawQuad(
target: null | RenderTarget,
shader: Shader,
rect?: Vec4): void
Draw a screen-space rectangle in a render target, using a specified shader.
Parameters
target
The output render target.
null
| RenderTarget
shader
Shader
The shader to be used for drawing the rectangle.
rect?
The normalized screen-space position (rect.x, rect.y) and size (rect.z,
rect.w) of the rectangle. Default is [0, 0, 1, 1]
.
Returns
void
render()
render(
inputTarget: RenderTarget,
outputTarget: RenderTarget,
rect?: Vec4): void
Render the post effect using the specified inputTarget to the specified outputTarget.
Parameters
inputTarget
RenderTarget
The input render target.
outputTarget
RenderTarget
The output render target. If null then this will be the screen.
rect?
The rect of the current camera. If not specified, it will default to
[0, 0, 1, 1]
.
Returns
void