#include "flecs.h" #include /* Component types */ struct Position { double x, y; }; struct Velocity { double x, y; }; int main(int argc, char *argv[]) { flecs::world world(argc, argv); flecs::component(world, "Position"); flecs::component(world, "Velocity"); flecs::system(world) .iter([](const flecs::iter& it, Position *p, const Velocity *v) { for (auto row : it) { p[row].x += v[row].x; p[row].y += v[row].y; std::cout << "Moved " << it.entity(row).name() << " to {" << p[row].x << ", " << p[row].y << "}" << std::endl; } }); flecs::entity(world, "MyEntity") .set({0, 0}) .set({1, 1}); world.set_target_fps(1); std::cout << "Application move_system is running, press CTRL-C to exit..." << std::endl; /* Run systems */ while (world.progress()) { } }