#include #include #include #include "types.h" template struct entt::type_index {}; CR_EXPORT int cr_main(cr_plugin *ctx, cr_op operation) { switch (operation) { case CR_STEP: [ctx]() { auto ®istry = *static_cast(ctx->userdata); const auto view = registry.view(); registry.assign(view.begin(), view.end(), velocity{1., 1.}); registry.view().each([](auto &pos, auto &vel) { pos.x += static_cast(16 * vel.dx); pos.y += static_cast(16 * vel.dy); }); }(); break; case CR_CLOSE: case CR_LOAD: case CR_UNLOAD: // nothing to do here, this is only a test. break; } return 0; }