- Update LangVersion to "preview", which allows us
to use the generic attributes feature from C# 11
- Any attribute implementing ICreateEntityAttribute
now registers an entity for the marked type
- [Proxy<T>] registers type not owned by the module
- [Add<TEntity>] and [Add<TRelation, TTarget>]
which will call EntityBuilder.Set(...) on registration
- A number of shorthand attributes for [Add<...>]
- Re-introduce [Singleton]
- IterActionGenerator has been cleaned up a bit ..
- .. and as a result now supports queries, which don't
by design don't match any (non-sourced) entities
- Add [DependsOn] to modules that were missing them
Add EntityPath class, wraps a UTF8 string in-memory
which represents an entity path within flecs' hierarchy.
- Path separator is now forward-slash instead of dot
- Only unicode letters, numbers, dot, dash and underscore
are valid characters to use for an entity name
Add IAllocator interface and implementations, which
handle unmanaged allocations (i.e. for use with interop).
- ToFlecs methods now use an IAllocator passed to them
- Use TempAllocator (one per thread) to allocate flecs structs
Add basic ECS-based resource handling / loading.
- Resources now loads from any assembly, including
EntityPaths that represents an assembly + resource path
- TextureManaged has been rewritten, others will follow
- Move default shaders to gaemstone.Client