randomPoison / gunship-rs

An experimental game engine written in Rust.
MIT License
27 stars 3 forks source link

Automatically Register/Reload Component Managers and Systems #13

Closed randomPoison closed 8 years ago

randomPoison commented 9 years ago

Right now game code has to manually register all component managers and systems at startup, and has to manually reload them when the DLL is reloaded (if hotloading is enabled). This code is super boilerplate and we should be able to automate it to some extent. The easiest thing to do would be to create a macro that generates the init and and reload glue given a list of managers and systems, but I think we can do one better. I'd like to see if it's possible to create a compiler plugin to automatically generate the glue code without any need for the end use to do any work.

Minimum Feature Set

randomPoison commented 8 years ago

This task is large enough to be a major milestone of its own. The hotloading system is currently broken anyway so this will likely get started as part of a future overhaul to hotloading.

randomPoison commented 8 years ago

The ECS is going away (or at least getting majorly reworked) so this issue is no longer relevant.