Repository navigation
This is the first release since a long time with a breaking change. The focus on this version was mainly performance/memory management. For a longer explanation, check out the discussion.
For more details refer to the new EntityRef wiki entry.
Changelog:
- NEW: new
EntityRefto store a stable reference to an Entity in a component. Unlike a raw Entity, an EntityRef becomes invalid when the referenced entity is removed from the world, allowing safe detection of stale references. AddedgetRefto Entity as well as null-safeisValidandisNotValidhelpers onEntityRef - NEW: add sparse set implementation (
SparseEntityBag) for better family performance - UPDATE: make
Entitya value class again and remove the version field; invalidation of removed entities is now handled viaEntityRefinstead - UPDATE: add safety that the fixed time step of an IntervalSystem cannot be zero or negative
- UPDATE: use kotlinx-atomicfu to generate component ids atomically in a thread-safe way
- UPDATE: refactor build configuration from buildSrc to a separate build-logic and update to a minimum of JDK 17
- UPDATE: update following versions
- Gradle 9.7.1
- Kotlin 2.4.10
- kotlinx-benchmark: 0.4.17
- kotlinx-serialization: 1.11.0
- Dokka: 2.2.0
- kotlinx-atomicfu: 0.33.0