【发布时间】:2019-03-03 09:36:52
【问题描述】:
我和一些小伙伴正在尝试构建一个可以在 C++ 中运行多个游戏的游戏引擎。这些游戏非常相似,以至于它们都共享相似的机制和界面,我想制作一些适用于每个游戏的文件。许多源文件将与我们的 GUI 或游戏引擎文件相同。但是,一些处理单个游戏机制的文件会因游戏而异。如果这扩展到一个大型库,我不想简单地包含每个库中的每个文件来玩一个游戏。我也不想在库的每个文件夹中都有 GUI 和游戏引擎文件的副本。
我目前正在考虑一个启动器的想法,它将更改#include 标签以匹配启动器所做的选择,尽管这可能需要重新编译。有没有办法做到这一点/这是一种好的技术,还是他们的更好的方法。 (请记住,我希望 int main 保留在游戏引擎/共享文件中,而不是为每个游戏创建一个 main)
【问题讨论】:
-
因此你的启动器每次也应该编译代码?
-
听起来您正在寻找一个插件架构。这可能会有所帮助(谷歌也可能)stackoverflow.com/questions/43322/…