On Tuesday, 4 February 2014 at 09:49:39 UTC, Zoadian wrote:
We're currently working on an Entity Component System for D (
https://github.com/Zoadian/nitro)
Here some good explanations:
http://t-machine.org/index.php/2007/09/03/entity-systems-are-the-future-of-mmog-development-part-1/
http://www.richardlord.net/blog/what-is-an-entity-framework
After carefully reading the material, I think that the Entity
System / Entity Component System (ECS) framework is indeed a good
design, and provides a good answer for the specific example I was
considering (spaceships, etc.).
Still, I wonder how related to the (pipelined) component approach
described by Walter and Teoh this ECS approach really is. Perhaps
more specifically, I wonder if the ECS approach also allows using
a lot of the std.algorithms, like was done in the pipelined
component approach, and in the calendar example in particular.
Also, I'm a bit lost with the Nitro code and how to use it.
(Tangentially, two things that I was wondering while reading
about the ECS: how important would it be to have non-polymorphic
reference types, and why are we paying for the object monitor
field when that approach seems to be outdated, especially in D)