You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Currently, the API for modifying components on an Entity involves passing all of the properties of that component into a method either adding that component or replacing an existing component.
This works alright for components with one or two fields, but after several fields this can be a bit exhausting, particularly if you only want to modify one or two fields.
Describe the solution you'd like
Ideally, there should be a way to be able to modify a subset of a component's fields without needing to call either Add or Replace with the superset of all of that component's fields AND still have the appropriate Events be called for Adding, Replacing, or Removing a component and work with component pooling. There are a couple of options to look into:
The property for a non-flag component is currently get-only. This could be changed to include a setter.
Add and Replace component method overloads could be added that accept a component value.
For all of these options, their internal implementation would obey the same logic rules for events, pooling and require additional unit tests to verify that.
Describe alternatives you've considered
It is possible right now to get an existing component and modify one or two fields directly on it without calling Entity methods for Replacing, but this can only be done in this context and it does not trigger events for the entity's component being updated.
The text was updated successfully, but these errors were encountered:
With the addition of blueprints a new component API was added for Entities for Copy_ComponentName_To that enables a developer to copy the members of an existing component to an entity as a new component or a new one or an existing one.
Pulling this off of a milestone for now as some partial progress has been made, but I want to brainstorm this over further to come up with a better defined set of API changes for this.
Is your feature request related to a problem? Please describe.
Currently, the API for modifying components on an Entity involves passing all of the properties of that component into a method either adding that component or replacing an existing component.
This works alright for components with one or two fields, but after several fields this can be a bit exhausting, particularly if you only want to modify one or two fields.
Describe the solution you'd like
Ideally, there should be a way to be able to modify a subset of a component's fields without needing to call either Add or Replace with the superset of all of that component's fields AND still have the appropriate Events be called for Adding, Replacing, or Removing a component and work with component pooling. There are a couple of options to look into:
For all of these options, their internal implementation would obey the same logic rules for events, pooling and require additional unit tests to verify that.
Describe alternatives you've considered
It is possible right now to get an existing component and modify one or two fields directly on it without calling Entity methods for Replacing, but this can only be done in this context and it does not trigger events for the entity's component being updated.
The text was updated successfully, but these errors were encountered: