SetGlobalConstantBuffer
Sets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
Read time 4 minutesLast updated 6 days ago
Definition
- Type: Method
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
SetGlobalConstantBuffer(string, ComputeBuffer, int, int)
Sets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
public static void SetGlobalConstantBuffer(string name, ComputeBuffer value, int offset, int size)
Parameters
The name of the constant buffer to override.
The buffer to override the constant buffer values with, or null to remove binding.
Offset in bytes from the beginning of the buffer to bind. Must be a multiple of SystemInfo.constantBufferOffsetAlignment, or 0 if that value is 0.
The number of bytes to bind.
Remarks
See Material.SetConstantBuffer for usage. If a constant buffer is bound both globally and per-material, the per-material buffer is used. However, if a constant buffer is bound globally, it overrides all shader parameters in all materials that reside in any constant buffer with the given name. Use this function with special caution, especially when you're using constant buffer names that are commonly used, as it may have unintended effects.
SetGlobalConstantBuffer(int, ComputeBuffer, int, int)
Sets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
public static void SetGlobalConstantBuffer(int nameID, ComputeBuffer value, int offset, int size)
Parameters
The name ID of the constant buffer retrieved by Shader.PropertyToID.
The buffer to override the constant buffer values with, or null to remove binding.
Offset in bytes from the beginning of the buffer to bind. Must be a multiple of SystemInfo.constantBufferOffsetAlignment, or 0 if that value is 0.
The number of bytes to bind.
Remarks
See Material.SetConstantBuffer for usage. If a constant buffer is bound both globally and per-material, the per-material buffer is used. However, if a constant buffer is bound globally, it overrides all shader parameters in all materials that reside in any constant buffer with the given name. Use this function with special caution, especially when you're using constant buffer names that are commonly used, as it may have unintended effects.
SetGlobalConstantBuffer(string, GraphicsBuffer, int, int)
Sets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
public static void SetGlobalConstantBuffer(string name, GraphicsBuffer value, int offset, int size)
Parameters
The name of the constant buffer to override.
The buffer to override the constant buffer values with, or null to remove binding.
Offset in bytes from the beginning of the buffer to bind. Must be a multiple of SystemInfo.constantBufferOffsetAlignment, or 0 if that value is 0.
The number of bytes to bind.
Remarks
See Material.SetConstantBuffer for usage. If a constant buffer is bound both globally and per-material, the per-material buffer is used. However, if a constant buffer is bound globally, it overrides all shader parameters in all materials that reside in any constant buffer with the given name. Use this function with special caution, especially when you're using constant buffer names that are commonly used, as it may have unintended effects.
SetGlobalConstantBuffer(int, GraphicsBuffer, int, int)
Sets a ComputeBuffer or GraphicsBuffer as a named constant buffer for all shader types.
public static void SetGlobalConstantBuffer(int nameID, GraphicsBuffer value, int offset, int size)
Parameters
The name ID of the constant buffer retrieved by Shader.PropertyToID.
The buffer to override the constant buffer values with, or null to remove binding.
Offset in bytes from the beginning of the buffer to bind. Must be a multiple of SystemInfo.constantBufferOffsetAlignment, or 0 if that value is 0.
The number of bytes to bind.
Remarks
See Material.SetConstantBuffer for usage. If a constant buffer is bound both globally and per-material, the per-material buffer is used. However, if a constant buffer is bound globally, it overrides all shader parameters in all materials that reside in any constant buffer with the given name. Use this function with special caution, especially when you're using constant buffer names that are commonly used, as it may have unintended effects.