Method AddBuffer
AddBuffer<T>(Entity)
Adds a dynamic buffer component to an entity.
Declaration
[BurstCompatible(GenericTypeArguments = new Type[]{typeof(BurstCompatibleBufferElement)})]
public DynamicBuffer<T> AddBuffer<T>(Entity entity)
    where T : struct, IBufferElementDataParameters
| Type | Name | Description | 
|---|---|---|
| Entity | entity | The entity. | 
Returns
| Type | Description | 
|---|---|
| DynamicBuffer<T> | The buffer. | 
Type Parameters
| Name | Description | 
|---|---|
| T | The type of buffer element. Must implement IBufferElementData. | 
Remarks
A buffer component stores the number of elements inside the chunk defined by the [InternalBufferCapacity] attribute applied to the buffer element type declaration. Any additional elements are stored in a separate memory block that is managed by the EntityManager.
Adding a component changes an entity's archetype and results in the entity being moved to a different chunk.
(You can add a buffer component with the regular AddComponent methods, but unlike those methods, this method conveniently also returns the new buffer.)
Important: This function creates a sync point, which means that the EntityManager waits for all currently running Jobs to complete before adding the buffer and no additional Jobs can start before the function is finished. A sync point can cause a drop in performance because the ECS framework may not be able to make use of the processing power of all available cores.
Exceptions
| Type | Condition | 
|---|---|
| ArgumentException | The Entity does not exist. |