As video games steadily increase in complexity and detail, game engines must also improve to be able to support both rapid and modular development while still maintaining high performance. Component-based architectures have been shown to be effective for allowing developers to rapidly create stunning games with modular components, but unfortunately come with a performance cost over traditional call-and-return systems. This thesis proposes a method that modifies existing component-based game engine architectures to automatically distribute and synchronize work in order to improve performance. |