Skip to content

Flecs v4.0.0-beta

Pre-release
Pre-release
Compare
Choose a tag to compare
@SanderMertens SanderMertens released this 21 May 06:07
e008ac2

What is this?

This is the Flecs v4 beta release! ๐ŸŽ‰

You can use this release to familiarize and play around with the new APIs and features before v4 comes out. The biggest difference between v3 and v4 is a new query engine that unifies filters, queries and rules in a single API.

What is a beta release?

Beta means that the v4 branch now has all the features that the final release will have! The next few weeks will be spent finding bugs, updating documentation, updating the Flecs demo's and on creating a migration guide.

What's new since v4.0.2-alpha

  • A new sparse component storage
  • Union relationships have been reimplemented for the v4 code base
  • On prefab instantiation, components are now copied to the instance instead of inherited.
  • New traits have been introduced to customize instantiation behavior
  • The iter and run query iteration callbacks have been replaced with a single run callback
  • OVERRIDE is renamed to AUTO_OVERRIDE
  • Flecs script assemblies have been renamed to templates
  • The existing query manual has been updated to v4
  • A new Flecs Query Language manual has been added that describes query DSL syntax
  • A new component traits manual has been added
  • Lots of C functions have been documented with doxygen
  • Bugfixes

This version does not work with the explorer because of a breaking change in the query DSL. To use the explorer with this release, use this URL: https://www.flecs.dev/explorer/v4?remote=true.

The release should be stable enough for experimentation.

What is missing?

  • There are a handful of known bugs that still need to be fixed
  • Performance testing hasn't finished yet
  • Documentation has not been updated yet

When will v4 come out?

The updated goal is to release in June.

Where can I share feedback?

Post v4 feedback in this discussion post: #1181 or on the Flecs discord server, whichever you prefer!

โš ๏ธ Do not use this release in an actual project! โš ๏ธ