vertexBufferTarget
The intended target usage of the Mesh GPU vertex buffer.
Read time 1 minuteLast updated 7 days ago
Definition
- Type: Property
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
public GraphicsBuffer.Target vertexBufferTarget { get; set; }
Remarks
By default, Mesh vertex buffers have GraphicsBuffer.Target.Vertex usage target. If you want to access the mesh vertex buffer from a compute shader, additional targets need to be requested, for example GraphicsBuffer.Target.Raw.
using UnityEngine;public class ExampleScript : MonoBehaviour{ public Mesh mesh; public ComputeShader computeShader; void Start() { // Mark the vertex buffer as needing "Raw" // (ByteAddressBuffer, RWByteAddressBuffer in HLSL shaders) // access. mesh.vertexBufferTarget |= GraphicsBuffer.Target.Raw; // Get the vertex buffer of the Mesh, and set it up // as a buffer parameter to a compute shader. var vertexBuffer = mesh.GetVertexBuffer(0); computeShader.SetBuffer(0, "MeshVertexBuffer", vertexBuffer); vertexBuffer.Dispose(); }}