Dec 21 2008
Objects, components, and services
Due to the holidays, I actually have some time to get back to programming. Up until now, my code has been focused on the machine and engine layers…rendering, memory management, job control, debug scaffolding, etc. All of the items which are needed to get things on screen, but do not have any of the behavior nor game play parts.
Most game engines have gone away from trying to describe game objects with explicit C++ class hierarchies. Very quickly, there is a base object called CObject which has everything but the kitchen sink in it. This also creates an interconnected mess between the tick cycles for the object and all of the game systems. It is very hard to parallelize the tick loop and impossible to move the objects off to extra processors such as the SPUs.