GTGameEngine
GTGameEngine copied to clipboard
Improve components infrastructure
This is a major change to the engine because components are such a core system. Basically, there are a few issues that need to be better handled with components:
- Integration with the editor can be annoying when adding a new component
- GUI elements should be built dynamically based on the type of the attributes
- Serialization works on a per-component basis, whereas a per-attribute basis would be much more scalable.
- Keeping track of changes on a per-attribute basis would prevent a lot of waste
- Integration with prefabs would be greatly improved because it would allow the developer to choose which variables should support per-instantiation modification
- We could much more easily see which attributes have changed and then make appropriate decisions around that