做的最后一件事。如果你已经写过 Delta3D 应用程序,你应该已经用过 dtABC::Application 了,这里为什么要用一个 GameEntryPoint 而不是 dtABC::Application 呢?最主要的原因是为了让你的系统可变得可配置。 Well, the primary reason is that itmakes your system configurable. GameStart 镜像了大多数游戏引擎拥有的安装类型,它们只用一个可执行程序来运行不同的游戏应用,而只需要将这些不同的游戏程序做成链接库就可以,先通过运行 GameStart 然后在来选择想要运行的任何游戏程序。
动态链接库中主要函数:
extern "C" XX_EXPORT dtGame::GameEntryPoint* CreateGameEntryPoint() { return new TutorialGameEntryPoint; } / / extern "C" XX_EXPORT void DestroyGameEntryPoint(dtGame::GameEntryPoint* entryPoint) { delete entryPoint; }
