jeffcampbellmakesgames / Entitas-Redux

An entity-component framework for Unity with code generation and visual debugging
MIT License
103 stars 13 forks source link

[FEATURE REQUEST] Add capability for separate Update, LateUpdate, and FixedUpdate systems on same Systems #6

Closed jeffcampbellmakesgames closed 4 years ago

jeffcampbellmakesgames commented 4 years ago

Is your feature request related to a problem? Please describe.

As of right now, an IExecuteSystem and Systems offer a single Execute method. In the past, this has meant creating multiple contexts for executing at different update intervals such as Update, FixedUpdate, and LateUpdate. It might make more sense for Systems to instead have the ability for a user to also add a system as an Update, FixedUpdate, and/or LateUpdate system so that a user can execute a single context's systems at all three update intervals. In this way a user would be able to still separate contexts for update intervals using Execute if they chose to do so, or not use separate update intervals at all, but others could execute systems on the same entities on the appropriate interval.

Describe the solution you'd like

There is a bit of investigation to do here as far as an approach. It might make sense to add new interfaces for:

as well as add new API functionality for Systems for adding these systems, which would then be categorized correctly. Visual Debugging would also need to be updated to account for new categories of systems.

jeffcampbellmakesgames commented 4 years ago

Released in v1.1.0