Artemis Entity Framework Ported to C#


Artemis is a high performance Entity System framework for games, written in Java and now ported to C#. It is also a framework to manage entities, components and systems in a game world. It is inspired by the great article Entity Systems are the future of MMORPG articles by Adam Martin on t-machine.org.

Artemis library is only 26 KB in size, it has no dependencies (for PC, in Xbox and Windows Phone 7 we have one) and can be used with any game framework or library, 2D or 3D.

Differences from the original version

We support all the features included in the original Artemis version, we also added the following features:

  • MultiThreading Support (two ways of doing this)
  • Xbox/WP7 full support
  • Events for intercepting adding/removal of entities/components
  • Entity Pool (to make objects reusable, minimize garbage collection activity, improve performance)
  • Small goodies, like feeding the EntityWorld with whole Entities(maybe loading from external resources), enabling/disabling systems, getting Entity tag, API shortcuts(see unit tests for more on this), etc.

Download

Stable Artemis DLL (PC, WP7 and Xbox): https://github.com/thelinuxlich/artemis_CSharp/tags (if you prefer, we are also on .Net Nuget http://nuget.org/packages/Artemis)

Documentation: http://thelinuxlich.github.com/artemis_CSharp/

StarWarrior Game Tutorial (Need XNA 4.0 installed): https://github.com/thelinuxlich/starwarrior_CSharp/tags

This game tutorial runs on PC, Phone7 and Xbox.

Ported By

Alisson Cavalcante Agiani

Thiago Dias Pastor

Links

Original Java Artemis: http://gamadu.com/artemis/

Our git Artemis port repo: https://github.com/thelinuxlich/artemis_CSharp

Doubts ??? Check Our Forum: http://ploobs.com.br/forum/viewforum.php?f=39

Our git StarWarrior repo: https://github.com/thelinuxlich/starwarrior_CSharp

,