Documentation

Unity Engine


Unity Engine


AddBuffer<T>(Entity)

Adds a dynamic buffer component to an entity.
Read time 1 minuteLast updated 3 days ago

Definition

  • Type: Method
  • Namespace: Unity.Entities
  • Assembly: UnityEngine.EntitiesModule
public DynamicBuffer<T> AddBuffer<T>(Entity entity) where T : unmanaged, IBufferElementData

Parameters

entity

The entity.

Returns

Type

Description

DynamicBuffer<T>The buffer.

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 method creates a sync point, which means that the EntityManager waits for all currently running jobs to complete before adding the component. No additional jobs can start before the method is finished. A sync point can cause a drop in performance because the ECS framework might not be able to use the processing power of all available cores.
Additional Resources: InternalBufferCapacityAttribute