GraphicsBuffer 可以用作 CopyBuffer 的目标。
用于 Graphics.CopyBuffer 或 CommandBuffer.CopyBuffer 的目标缓冲区必须设置 CopyDestination
目标。此目标通常与其他目标标志结合使用。
using UnityEngine;
public class ExampleScript : MonoBehaviour { void Start() { // create a source index buffer and set data for it var src = new GraphicsBuffer( GraphicsBuffer.Target.Index | GraphicsBuffer.Target.CopySource, 3, 2); src.SetData(new ushort[] {1, 10, 100}); // create a destination index buffer and copy source into it var dst = new GraphicsBuffer( GraphicsBuffer.Target.Index | GraphicsBuffer.Target.CopyDestination, 3, 2); Graphics.CopyBuffer(src, dst);
// check the copied data var got = new ushort[3]; dst.GetData(got); Debug.Log($"copied data: {got[0]}, {got[1]}, {got[2]}");
// release the buffers src.Release(); dst.Release(); } }