ECS Frameworks

Similar to the UI thread I am wondering what ECS frameworks people use with Monogame (if you do use an ECS).

The four that I am familiar with are:

  • Entitas-CSharp which I have been toying around with for a week that looks pretty interesting.
  • Ash.Net based on the Ash Framework, which I love - although this port looks a little out-dated.
  • Artemis C# which is a port of the great Artemis framework, but like above seems to be a little out of date (if you compare it to artemis-odb).
  • Nez has an ECS built into the library that looks decent.

Are there any others that I am missing. Does anyone have experiences with these or more?

1 Like

Svelto.ECS is a new platform agnostic ECS framework. The Vanilla example runs on .Net Core and .Net Standard, so I don’t see why you couldn’t use it with monogame. If you do, it would be great to know how it works!

you can find many articles here: http://www.sebaslab.com/category/svelto/

and the github repository here: https://github.com/sebas77/Svelto.ECS.Vanilla.Example

I know this is a very old thread, but I thought I’d throw my opinion up for anyone who stumbles upon it like I did, since I think there’s a relatively new contender. After writing my own initial ECS, I was searching posts in the forum and doing lots of research to switch to a more battle-tested one. I highly recommend DefaultEcs.

  • It’s very easy to use and has thorough examples.
  • It’s very fast and memory-efficient. The author has published benchmark comparisons with Entitas that other users corroborate.
  • It’s written for raw C#, not Unity like many of the others, so it doesn’t have all that extra bloat and unhelpful examples.
  • It’s one of the few that targets netstandard and has published NuGet packages.
  • It’s still actively maintained.

I’m not affiliated with any of these ECS packages.

2 Likes