KonstantinTomashevich / Emergence

Flexible set of libraries for gameplay development. Currently under development.
Apache License 2.0
5 stars 0 forks source link

Implement "world inheritance" through registry sharing #61

Closed KonstantinTomashevich closed 1 year ago

KonstantinTomashevich commented 1 year ago

We need to work with assets and configs in "top level" world in order to save them while transitioning from one scene to another. To implement that we need some kind of "world inheritance" through partial sharing of world registries. For example, if parent world has storage for the type we need, we create query on parent world level instead of child world level.

But thinking of game as "multiple worlds" might be incorrect. We can think of one world with data views tree: this will provide the same multiple registries feature and the same registry sharing, but without exposing the problem of calling update multiple times.