Method GetComponent
GetComponent<T>(Entity)
Look up the value of a component for an entity.
Declaration
public static T GetComponent<T>(Entity entity) where T : class
Parameters
Type | Name | Description |
---|---|---|
Entity | entity | The entity. |
Returns
Type | Description |
---|---|
T | A struct of type T containing the component value. |
Type Parameters
Name | Description |
---|---|
T | The type of component to retrieve. |
Remarks
Use this method to look up data in another entity using its Entity object. For example, if you have a component that contains an Entity field, you can look up the component data for the referenced entity using this method.
When iterating over a set of entities via IJobEntity or Query<T1>(), do not use this method to access data of the current entity in the set. This function is much slower than accessing the data directly (by passing the component containing the data to your lambda iteration function as a parameter).
When you call this method gets replaced with component access methods through GetComponentObject<T>(Entity).
This lookup method results in a slower, indirect memory access. When possible, organize your data to minimize the need for indirect lookups.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown if the component type has no fields. |
GetComponent<T>(SystemHandle)
Gets the value of a component for an entity associated with a system.
Declaration
public static T GetComponent<T>(SystemHandle systemHandle) where T : class
Parameters
Type | Name | Description |
---|---|---|
SystemHandle | systemHandle | The system handle. |
Returns
Type | Description |
---|---|
T | A struct of type T containing the component value. |
Type Parameters
Name | Description |
---|---|
T | The type of component to retrieve. |
Remarks
Use this method to look up data in another system owned entity using its SystemHandle object.
When you call this method gets replaced with component access methods through GetComponentObject<T>(Entity).
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown if the component type has no fields. |