Method AddComponentForEntityQuery
AddComponentForEntityQuery(EntityQuery, ComponentType)
Records a command to add a component to all entities matching a query.
Declaration
public void AddComponentForEntityQuery(EntityQuery entityQuery, ComponentType componentType)
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying the entities to which the component is added. |
ComponentType | componentType | The type of component to add. |
Remarks
The set of entities matching the query is 'captured' in the method call, and the recorded command stores an array of all these entities.
Does not affect entities which already have the component.
Behavior at Playback: Will throw an error if one of these entities is destroyed before playback. (With safety checks enabled, an exception is thrown. Without safety checks, playback will perform invalid and unsafe memory access.)
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |
AddComponentForEntityQuery<T>(EntityQuery)
Records a command to add a component to all entities matching a query.
Declaration
public void AddComponentForEntityQuery<T>(EntityQuery entityQuery)
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying the entities to which the component is added. |
Type Parameters
Name | Description |
---|---|
T | The type of component to add. |
Remarks
The set of entities matching the query is 'captured' in the method call, and the recorded command stores an array of all these entities.
Does not affect entities which already have the component.
Behavior at Playback: Will throw an error if one of these entities is destroyed before playback. (With safety checks enabled, an exception is thrown. Without safety checks, playback will perform invalid and unsafe memory access.)
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |
AddComponentForEntityQuery<T>(EntityQuery, T)
Records a command to add a component to all entities matching a query. Also sets the value of this new component on all the matching entities.
Declaration
public void AddComponentForEntityQuery<T>(EntityQuery entityQuery, T value)
where T : struct, IComponentData
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying the entities to which the component is added. |
T | value | The value to set on the new component in playback for all entities matching the query. |
Type Parameters
Name | Description |
---|---|
T | The type of component to add. |
Remarks
The set of entities matching the query is 'captured' in the method call, and the recorded command stores an array of all these entities.
Entities which already have the component type will have the component set to the value.
Behavior at Playback: Will throw an error if one of these entities is destroyed before playback. (With safety checks enabled, an exception is thrown. Without safety checks, playback will perform invalid and unsafe memory access.)
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |
AddComponentForEntityQuery(EntityQuery, ComponentTypes)
Records a command to add multiple components to all entities matching a query.
Declaration
public void AddComponentForEntityQuery(EntityQuery entityQuery, ComponentTypes componentTypes)
Parameters
Type | Name | Description |
---|---|---|
EntityQuery | entityQuery | The query specifying the entities to which the components are added. |
ComponentTypes | componentTypes | The types of components to add. |
Remarks
The set of entities matching the query is 'captured' in the method call, and the recorded command stores an array of all these entities.
Some matching entities may already have some or all of the specified components. After this operation, all matching entities will have all of the components.
Behavior at Playback: Will throw an error if one of these entities is destroyed before playback. (With safety checks enabled, an exception is thrown. Without safety checks, playback will perform invalid and unsafe memory access.)
Exceptions
Type | Condition |
---|---|
NullReferenceException | Throws if an Allocator was not passed in when the EntityCommandBuffer was created. |
InvalidOperationException | Throws if this EntityCommandBuffer has already been played back. |