ECS vs. Component-Based (Unity-style)?
If you had to choose, would you prefer a true ECS workflow or a Unity-style Component-Based workflow? and Why?
If you had to choose, would you prefer a true ECS workflow or a Unity-style Component-Based workflow? and Why?
This is the reflection system in my game engine.
I'm currently building an ECS and a component-based architecture similar to Unity in C++, so I created this reflection system to make everything easier.
Without any manual registration, you can expose data simply by writing [[export]]. You can also combine attributes, for example:
[[export, range(min, max)]]
The architecture is somewhat similar to C#'s attribute system (or at least that's what I was aiming for). It automatically generates .generated.hxx files inside the .generated/ directory.
I built it using Clang and LLVM.
These videos were very useful resources while developing it: