Version: 2022.3
LanguageEnglish
  • C#

Target

enumeration

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

The intended targets for GraphicsBuffer.

Provide the intended targets (target) when creating a GraphicsBuffer. For example, pass GraphicsBuffer.Target.Index for a buffer to be usable as a geometry index buffer.

Different platforms and devices might or might not support different targets. Any target values different from Vertex, Index or Constant require the compute shader support (see SystemInfo.supportsComputeShaders).

You can combine values in this enum. For example, GraphicsBuffer.Target.Index | GraphicsBuffer.Target.Raw creates a buffer that can be used both as an index buffer in a Graphics.DrawProcedural call, and as a raw byte address buffer in a compute shader.

DirectX 11 does not allow Index or Vertex buffers to also be Structured. For compute shader mesh data access with DirectX 11 compatibility, use Raw.

Additional resources: GraphicsBuffer class, GraphicsBuffer constructor, Mesh.vertexBufferTarget, Mesh.indexBufferTarget.

Properties

VertexGraphicsBuffer can be used as a vertex buffer.
IndexGraphicsBuffer can be used as an index buffer.
CopySourceGraphicsBuffer can be used as a source for CopyBuffer.
CopyDestinationGraphicsBuffer can be used as a destination for CopyBuffer.
StructuredGraphicsBuffer can be used as a structured buffer.
RawGraphicsBuffer can be used as a raw byte-address buffer.
AppendGraphicsBuffer can be used as an append-consume buffer.
CounterGraphicsBuffer with an internal counter.
IndirectArgumentsGraphicsBuffer can be used as an indirect argument buffer for indirect draws and dispatches.
ConstantGraphicsBuffer can be used as a constant buffer (uniform buffer).