Arch icon indicating copy to clipboard operation
Arch copied to clipboard

A high-performance C# based Archetype & Chunks Entity Component System (ECS) with optional multithreading.

Results 38 Arch issues
Sort by recently updated
recently updated
newest added

If a world is destroyed and then "destroyed" again after another world has replaced it (occupying the unused world ID), the second world won't actually be able to create entities...

bug

When calling the `public void RemoveRange(Entity entity, Span types)` method with an empty span it will move the entity slot even though the size doesn't change. This throws no exception....

bug

I found that World.WorldSize can have unintended value when create and destroy World multi-threaded. Simply use Interlocked methods to solve this problem. Also unit test added: MultiThreadTest.MultiThreadedCreateAndDestroy Sometimes test failed...

var cmd = new CommandBuffer(); var e = cmd.Create(new ComponentType[..]); var er = e.Reference(); // Cause out of bounds error

bug

I want a convenient way to duplicate entities. At the moment you need to call GetAllComponents(), which is unsatisfying. This implementation is faster, and could be made more efficient in...

This is in 1.3.0-alpha. Situation is running unit tests, so likely a concurrency issue where multiple threads are (indirectly) registering component types at the some time. I would suggest ComponentRegistry.Add...

bug

Example if you have 2k components each 2b, that is 2 chunks. The query will only run 2 jobs, for both chunks. regardless if you have 24 cores. Solution: split...

enhancement

Example this works ``` [Query(Parallel = false)] private void SomeQuery(in Entity entity) { this.somethng } ``` but this doesnt ``` [Query(Parallel = true)] private void SomeQuery(in Entity entity) { this.somethng...

bug
Arch.Extended