Version: Unity 7.0 Alpha (7000.0)
LanguageEnglish
  • C#

EntityManager.AddBuffer

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public DynamicBuffer<T> AddBuffer(Entity entity);

Parameters

Parameter Description
entity The entity.

Returns

DynamicBuffer<T> The buffer.

Description

Adds a dynamic buffer component to an entity.

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