Jump to content
  • Advertisement
Sign in to follow this  

Discussion on Artemis (C++), DOD and CES?

This topic is 2056 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi Everyone,



Back ground

For a while I have been meaning to use emscripten to make some HTML5 games by first writing everything in C++ and SDL (which then gives me the option of porting the C++ code if I wish). I started hashing out some code and ended up on my usual jaunt through trying to write the *perfect* system (I can't help myself, despite reading "write games not engines"). I love component based systems, on paper, and I set about writing a simple OOP implementation and was getting frustrated so I started reading up on other component designs and started to read a lot about CES and how it is better achieved through DOD...to be perfectly honest the end goal for me is never really to release a game but to broaden my mind, learn something new and play a bit of intellectual ping pong with people smile.png



So i have been reading various articles on DOD including this book: http://www.dataorienteddesign.com/dodmain/ and in general its really hard shifting my brain out of OOP and getting to grips with something that on the face of it looks quite old school. But the advantages make sense and actually the style of coding looks like it could be quite nice to use for games, if done right. And i don' think it has to be devoid of encapsulation (or at least the main point of), in fact the more I think about it, if i code in a style akin to how i code my shaders then it will be pretty tight. Any thoughts on DOD in general would be appreciated smile.png



there are lots of articles around, including on gamedev that talk about CES implementations but I keep coming back to Artemis



On paper artemis http://gamadu.com/artemis/manual.html sounds ideal, its based on http://t-machine.org/index.php/2007/11/11/entity-systems-are-the-future-of-mmog-development-part-2/ opinion on CES. 


But when I poke around the code for the C++ implementation of artemis, i can't decide if its actually good DOD, there are also 3/4 C++ implementations of Artemis. Commet, Gamedev and the one I poked around. Various hints that the C# implementation is better etc. 

Enough waffle, Actual Questions!

  • Has anyone used Artemis, got any comments
  • Has anyone chosen not to use Artemis and why?
    • What did you choose instead?
  • Anyone with emscripten experience that can tell me whether this endeavor for good DOD is fruitless because the memory access benefits wont translate into Javascript 
  • Any good resources or things to say about DOD
  • Any defense of *classic game OOP* and the whole "death by a thousand paper cuts" argument

    I hope this post can be a good little discussion, with some nice resources for anyone else that comes stumbling into these topics (I will post some more resources when i find them smile.png

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!