使用Monogame设置项目跨平台

时间:2016-06-16 21:27:10

标签: linux windows macos cross-platform monogame

我一直试图弄清楚如何为MonoGame设置跨平台项目。这样做的传统方式是什么? 这是通过共享项目完成的,我可以将所有内容保存在一个项目中吗?

此外,我不确定这些信息是否正确我是否需要Mac来构建我的Mac项目这是如何工作的?如果是这样,那么设置它的最佳方法是什么。

目标平台:WINDOWS,LINUX,MAC

2 个答案:

答案 0 :(得分:2)

设置跨平台MonoGame项目IMO的最佳方法是使用共享项目。共享项目还可以包含.mgcb文件,因此您也不需要复制内容。怎么做:

  1. 使用“Xamarin Studio / MonoDevelop”创建一个带有游戏名称的“MonoGame共享项目”
    • 如果您打算使用“Visual Studio”,请在此之后关闭“Xamarin Studio / MonoDevelop”,然后打开创建的项目
    • 您必须将生成的“Content \ Content.mgcb”文件包含在构建操作“无”中,以便在项目视图区域中显示
  2. 为您要启动游戏的平台添加MonoGame项目,即。创建一个“MonoGame Crossplatform Project”并将其命名为“(gamename).DesktopGL”
  3. 从平台项目中删除“Game1.cs”和“内容文件夹”
  4. 为您的共享项目添加参考
  5. 对于您的平台项目,在选项中将“输出程序集名称”设置为与共享项目相同
    • 此步骤似乎并不重要,但如果您使用自定义导入程序/处理器,则无需为每个平台单独编译内容。
  6. 你去了,你现在应该可以运行你的项目了。

      

    此外,我不确定这些信息是否正确我是否需要Mac来构建我的Mac项目这是如何工作的?如果是这样,那么设置它的最佳方法是什么。

    即使从Windows编译,DesktopGL项目中创建的可执行文件也可在Mac上运行,Mac用户只需使用Mono即可启动它。如果你想要,你可以使用MonoKickstart打包你的游戏,这样你的Linux和Mac用户就不必安装单声道:https://github.com/MonoGame/MonoKickstart此外,它还包括其他所需的本机库。关于如何使用它的说明在链接中。

答案 1 :(得分:1)

由于您只是针对Windows,Linux和Mac,因此可以使用在所有三个目标平台上运行的Xamarin/MonoDevlop

安装完成后,通过Addin管理器添加Monogame。 Xaramin和MonoDevlop第5版的插件。

然后,假设您使用OpenGL模板,则可以在所有三个平台之间使用相同的解决方案项目文件。我使用这种方法在Windows和Linux之间进行开发。

如果您开始使用Mobile(iOS / Android)或Windows上的DirectX而不是OpenGL开发,那么您需要使用共享项目或类似项目的唯一时间。