Class ConstantBuffer
Constant Buffer management class.
Namespace: UnityEngine.Rendering
Syntax
public class ConstantBuffer
Methods
Push<CBType>(CBType, ComputeShader, Int32)
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.  | 
| Int32 | 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>(CBType, Material, Int32)
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.  | 
| Int32 | 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, CBType, ComputeShader, Int32)
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.  | 
| Int32 | 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, CBType, Material, Int32)
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.  | 
| Int32 | 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>(CBType, Int32)
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.  | 
| Int32 | 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>(CommandBuffer, CBType, Int32)
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.  | 
| Int32 | 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()
Set<CBType>(ComputeShader, Int32)
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.  | 
| Int32 | 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, Int32)
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.  | 
| Int32 | 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, Int32)
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.  | 
| Int32 | 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>(Int32)
Bind the constant buffer globally.
Declaration
public static void SetGlobal<CBType>(int shaderId)
    where CBType : struct
Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | 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, Int32)
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.  | 
| Int32 | 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>(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.  | 
UpdateData<CBType>(CommandBuffer, 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.  |