Class RenderBuffers
The scene rendering buffers container.
Namespace: FlaxEngine
Assembly: FlaxEngine.CSharp.dll
Syntax
[Unmanaged]
public class RenderBuffers : Object
Constructors
RenderBuffers()
Properties
AspectRatio
Gets the buffers aspect ratio.
Declaration
[Unmanaged]
public float AspectRatio { get; }
Property Value
System.Single
|
DepthBuffer
Gets the depth buffer render target allocated within this render buffers collection (read only).
Declaration
[Unmanaged]
public GPUTexture DepthBuffer { get; }
Property Value
GPUTexture
|
GBuffer0
Gets the GBuffer texture 0. RGB: Color, A: AO
Declaration
[Unmanaged]
public GPUTexture GBuffer0 { get; }
Property Value
GPUTexture
|
GBuffer1
Gets the GBuffer texture 1. RGB: Normal, A: ShadingModel
Declaration
[Unmanaged]
public GPUTexture GBuffer1 { get; }
Property Value
GPUTexture
|
GBuffer2
Gets the GBuffer texture 2. R: Roughness, G: Metalness, B:Specular
Declaration
[Unmanaged]
public GPUTexture GBuffer2 { get; }
Property Value
GPUTexture
|
GBuffer3
Gets the GBuffer texture 3. RGBA: Custom Data
Declaration
[Unmanaged]
public GPUTexture GBuffer3 { get; }
Property Value
GPUTexture
|
Height
Gets the buffers height (in pixels).
Declaration
[Unmanaged]
public int Height { get; }
Property Value
System.Int32
|
LinkedCustomBuffers
External Render Buffers used to redirect FindCustomBuffer/GetCustomBuffer calls. Can be linked to other rendering task (eg. main game viewport) to reuse graphics effect state from it (eg. use GI from main game view in in-game camera renderer).
Declaration
[Unmanaged]
public RenderBuffers LinkedCustomBuffers { get; set; }
Property Value
RenderBuffers
|
MotionVectors
Gets the motion vectors render target allocated within this render buffers collection (read only).
Declaration
[Unmanaged]
public GPUTexture MotionVectors { get; }
Property Value
GPUTexture
|
Remarks
Texture ca be null or not initialized if motion blur is disabled or not yet rendered.
OutputFormat
Gets the output buffers format (R11G11B10 or R16G16B16A16 depending on UseAlpha property).
Declaration
[Unmanaged]
public PixelFormat OutputFormat { get; }
Property Value
PixelFormat
|
Size
Gets the buffers width and height (in pixels).
Declaration
[Unmanaged]
public Float2 Size { get; }
Property Value
Float2
|
UseAlpha
True if support alpha output in the rendering buffers and pass-though alpha mask of the scene during rendering (at cost of reduced performance).
Declaration
[Unmanaged]
public bool UseAlpha { get; set; }
Property Value
System.Boolean
|
Viewport
Gets the buffers rendering viewport.
Declaration
[Unmanaged]
public Viewport Viewport { get; }
Property Value
Viewport
|
Width
Gets the buffers width (in pixels).
Declaration
[Unmanaged]
public int Width { get; }
Property Value
System.Int32
|
Methods
Init(Int32, Int32)
Allocates the buffers.
Declaration
[Unmanaged]
public bool Init(int width, int height)
Parameters
System.Int32
width
The surface width (in pixels). |
System.Int32
height
The surface height (in pixels). |
Returns
System.Boolean
True if cannot allocate buffers, otherwise false. |
Release()
Release the buffers data.
Declaration
[Unmanaged]
public void Release()