Class ConstantBuffer
Constant Buffer management class.
Inherited Members
Namespace: UnityEngine.Rendering
Assembly: Unity.RenderPipelines.Core.Runtime.dll
Syntax
public class ConstantBuffer
Methods
PushGlobal<CBType>(CommandBuffer, in CBType, int)
Update the GPU data of the constant buffer and bind it globally via a command buffer.
Declaration
public static void PushGlobal<CBType>(CommandBuffer cmd, in CBType data, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
CBType | data | Input data of the constant buffer. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
PushGlobal<CBType>(in CBType, int)
Update the GPU data of the constant buffer and bind it globally.
Declaration
public static void PushGlobal<CBType>(in CBType data, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CBType | data | Input data of the constant buffer. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Push<CBType>(CommandBuffer, in CBType, ComputeShader, int)
Update the GPU data of the constant buffer and bind it to a compute shader via a command buffer.
Declaration
public static void Push<CBType>(CommandBuffer cmd, in CBType data, ComputeShader cs, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
CBType | data | Input data of the constant buffer. |
ComputeShader | cs | Compute shader to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Push<CBType>(CommandBuffer, in CBType, Material, int)
Update the GPU data of the constant buffer and bind it to a material via a command buffer.
Declaration
public static void Push<CBType>(CommandBuffer cmd, in CBType data, Material mat, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
CBType | data | Input data of the constant buffer. |
Material | mat | Material to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Push<CBType>(in CBType, ComputeShader, int)
Update the GPU data of the constant buffer and bind it to a compute shader.
Declaration
public static void Push<CBType>(in CBType data, ComputeShader cs, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CBType | data | Input data of the constant buffer. |
ComputeShader | cs | Compute shader to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Push<CBType>(in CBType, Material, int)
Update the GPU data of the constant buffer and bind it to a material.
Declaration
public static void Push<CBType>(in CBType data, Material mat, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CBType | data | Input data of the constant buffer. |
Material | mat | Material to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
ReleaseAll()
Release all currently allocated singleton constant buffers. This needs to be called before shutting down the application.
Declaration
public static void ReleaseAll()
SetGlobal<CBType>(int)
Bind the constant buffer globally.
Declaration
public static void SetGlobal<CBType>(int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
SetGlobal<CBType>(CommandBuffer, int)
Bind the constant buffer globally via a command buffer.
Declaration
public static void SetGlobal<CBType>(CommandBuffer cmd, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Set<CBType>(ComputeShader, int)
Bind the constant buffer to a compute shader.
Declaration
public static void Set<CBType>(ComputeShader cs, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
ComputeShader | cs | Compute shader to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Set<CBType>(Material, int)
Bind the constant buffer to a material.
Declaration
public static void Set<CBType>(Material mat, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
Material | mat | Material to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
Set<CBType>(CommandBuffer, ComputeShader, int)
Bind the constant buffer to a compute shader via a command buffer.
Declaration
public static void Set<CBType>(CommandBuffer cmd, ComputeShader cs, int shaderId) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
ComputeShader | cs | Compute shader to which the constant buffer should be bound. |
int | shaderId | Shader porperty id to bind the constant buffer to. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
UpdateData<CBType>(CommandBuffer, in CBType)
Update the GPU data of the constant buffer via a command buffer.
Declaration
public static void UpdateData<CBType>(CommandBuffer cmd, in CBType data) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | cmd | Command Buffer used to execute the graphic commands. |
CBType | data | Input data of the constant buffer. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |
UpdateData<CBType>(in CBType)
Update the GPU data of the constant buffer.
Declaration
public static void UpdateData<CBType>(in CBType data) where CBType : struct
Parameters
Type | Name | Description |
---|---|---|
CBType | data | Input data of the constant buffer. |
Type Parameters
Name | Description |
---|---|
CBType | The type of structure representing the constant buffer data. |