Hi, everyone! I would appreciate any help\advices on the topic.
- fairly experienced with java and a little bit in large-scale projects
- right now creating a project using libgdx
- new to opengl, libgdx and entity\system paradigm
Recently I've come across an entity-based framework (Artemis) said to be written specifically to alleviate some of the problems with game development (as I've understood it). I've also read through a lot of info on the Entity\Components\System approach and, to be frank, I did like the concept. Right now I'm messing around with a "StarshipWarrior" app based on the framework and I have a couple of questions:
- The idea itself is very attractive, but I was surprised by how little info (especially in java) there actually is (compared to just a 'usual OOP' approach) on this topic. Moreover, the official Artemis forums and relevant threads on the other forums are pretty much dead. So, there has to be a catch: is there something wrong with this approach? Why isn't it popular?
- I've listed my background in order to justify the following question: for someone who is new to opengl and libgdx and entity\system concept, is it worth to 'relearn', code-structure-wise? I feel a bit overwhelmed by the amount of things I have to grasp in libgdx, but the entity\system idea really appeals to me.
- I've seen some other java implementations of this paradigm, but am incompetent of judging whether Artemis is better or not. Any recommendations? Maybe I should just write my own implementation? Are there any caveats I'm not seeing in writing such a system from scratch?
Thanks in advance!
edit: there is a concurrent thread titled 'Data Oriented or Object Oriented?' which mentions the Artemis framework but the discussion was not quite on the issues I wanted to be clarified, so I created a new one instead.