# Append

> Append-consume ComputeBuffer type.

## Definition

* **Type:** Field
* **Namespace:** [UnityEngine](/engine/6000.5/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
Append = 2
```

### Remarks

Allows a buffer to be treated like a stack in compute shaders. Maps to `AppendStructuredBuffer<T>` or `ConsumeStructuredBuffer<T>` in HLSL.

The `stride` passed when constructing the buffer must match structure size, be a multiple of 4 and less than 2048.

See Microsoft's HLSL documentation on [AppendStructuredBuffer](https://learn.microsoft.com/en-gb/windows/win32/direct3dhlsl/sm5-object-appendstructuredbuffer) and [ConsumeStructuredBuffer](https://learn.microsoft.com/en-gb/windows/win32/direct3dhlsl/sm5-object-consumestructuredbuffer).

The buffer size value can be copied into another buffer using [ComputeBuffer.CopyCount](/engine/6000.5/script-reference/unityengine/computebuffer/copycount.md), or explicitly reset with [ComputeBuffer.SetCounterValue](/engine/6000.5/script-reference/unityengine/computebuffer/setcountervalue.md).

Additional Resources: [ComputeBuffer](/engine/6000.5/script-reference/unityengine/computebuffer.md), [ComputeShader](/engine/6000.5/script-reference/unityengine/computeshader.md), [Material.SetBuffer](/engine/6000.5/script-reference/unityengine/material/setbuffer.md).
