2010-09-28 97 views
1

我正在制作一个游戏,允许开发内容,我希望它是基于DLL的系统。但是,我的游戏适用于Linux(X86 arch),Mac OSX和32位Windows。有没有一种方法可以让内容开发人员只编译一个东西,并基于该平台进行工作?我担心如果每个插件有3个版本,它可能会引起混淆。我能做什么?插件系统没有为每个操作系统重建?

感谢

+5

什么毛病平台indenpendent脚本语言? Lua,Python?那种事?他们使用C++。他们的插件?他们有可能吗? – 2010-09-28 23:05:53

回答

8

您可以决定使用一个跨平台的脚本环境,比如针对的Lua插件。这实际上是大多数跨平台游戏所做的。

0

除非事情自从我上次查看跨平台开发之后发生了巨大变化,如果您使用的是c/C++,则需要编译和链接您要执行的操作系统。

所以如果你想在3个操作系统上运行,你需要3个二进制文件。

+0

您也可以选择开发源代码并在用户系统上调用编译器,但在Windows上运行GCC并不适用,除非您使用该应用程序发布GCC。 – 2010-09-28 23:09:17

3

如果您需要C或C++插件,您可以使用LLVM作为中间层。有插件开发船LLVM程序集/字节码,并使用LLVM的运行时代码发射来加载时将其编译为本机代码。

0

不是例如。 XFree86的和/或Xorg的驱动程序(视频?还是别的什么?)

“跨操作系统”,所以他们可以一旦建成,并在任何操作系统上,至少在同一个CPU上“跑” ......

不知道如何工作......某种虚拟机可能?

可能是矫枉过正...但绝对有可能.....