partial port game components to GL engine