I'm excited to announce the first release of my library, evolved.lua!<p>evolved.lua is a fast and flexible ECS (Entity-Component-System) library for Lua. It is designed to be simple and easy to use, while providing all the features needed to create complex systems with blazing performance.<p>Enjoy!
> Components are stored in contiguous arrays in a SoA (Structure of Arrays) manner, which allows for fast iteration and processing<p>Does this actually matter in Lua? Aren’t all array elements going to be pointers to heap allocated objects anyways?<p>The point of SoA is your likely to be accessed values are adjacent in memory, but if you’re chasing a pointer to get that value then you’re not getting anything out of it.
Cool to see a new ECS project! I've been learning and using JECS (<a href="https://github.com/Ukendio/jecs">https://github.com/Ukendio/jecs</a>) for a project of mine, and some of the core ideas (like Chunks) felt familiar. This project definitely seems to have a more in-depth documentation though and a <i>lot</i> more features especially by having its own scheduler stuff. Would love to try it out on a new project someday
Will give this a try. I was using claude code to make a small game in love2d, and really hoped for a nice lua ecs lib to help manage the game objects (its my first time playing around with game dev).
One alternatives I like is <a href="https://bakpakin.github.io/tiny-ecs/doc/" rel="nofollow">https://bakpakin.github.io/tiny-ecs/doc/</a>