`Arch-ECS` extension or integration
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 7.8k
- Forks
- 1.2k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 49
Description
Arch is a high-performance archetype-based ECS for C#. It is inspired by Unity's ECS but is more manageable and already has an ever-growing ecosystem.
I slid onto the Stride discord the other day and it looked like an arch extension for Stride would be met with a fair amount of support. An integration wouldn't be that easy and may not be wanted by the devs, but an extension would be realistic.
Hence this issue. Arch itself is bare minimum. Thus easy to handle, integrate and nest. Likewise, Arch itself can also be modified relatively easily. So you could change the whole ECS with very little effort so that it uses ONLY native memory (which would however force you to renounce managed structs and classes). The scope of such an extension would of course have to be discussed and structured. For Arch to get the best out of it, components must be structs and as much pure data as possible (classes work too, but that loses cache locality). Among them, there are also some questions, such as how to connect Arch with Stride and the possibilities of making this as efficient as possible. Or in how far one could convert components to structs to get as much as possible out of the data-oriented layout.
How much support would there be for such an endeavor? Would anyone have concrete ideas, plans, or a rough idea on how to approach this?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by reviewing Arch and Stride's existing ECS-related capabilities, then use the Stride Discord discussion referenced in the issue to clarify whether an extension is wanted and what its scope should be. Done means an agreed integration direction and defined extension scope.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100