MonoGame真的是跨平台的吗? [英] Is MonoGame really cross-platform?

查看:255
本文介绍了MonoGame真的是跨平台的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我下载MonoGame(由于在Mac上将使用它代替XNA)并将其解压缩时,所有MonoDevelop解决方案文件都命名为MonoGame.Framework.[PLATFORM NAME].sln[PLATFORM NAME]的名称是操作系统.而且教程中的代码对于每个平台都是不同的,因此对于MonoGame来说似乎是这样.要在其他计算机上运行的应用程序,必须将其移植.这样对吗?如果是这样,Mono还有哪些其他版本的XNA,最好在Xbox 360上运行?我已经看过MonoXNA,但截至本文为止,它似乎还不够成熟,无法使用.

When I download MonoGame (which I will use in place of XNA since I'm on a Mac) and unzip it, all the MonoDevelop solution files are named MonoGame.Framework.[PLATFORM NAME].sln, with [PLATFORM NAME] being, well, the name of the OS. And the code in the tutorials is different for each platform, so it appears that for a MonoGame app to run on a different machine, it must be ported. Is this correct? If so, what other versions of XNA are there for Mono, preferably that work on the Xbox 360? I've seen MonoXNA, but it doesn't seem mature enough to use as of this post.

推荐答案

MonoGame通过在多个平台上提供XNA API,使您的代码跨平台. (但是,它不会使您编译的 binary 跨平台像Flash或Java那样跨平台.)

MonoGame makes your code cross-platform by providing the XNA API on multiple platforms. (But it does not make your compiled binary cross-platform like, say, Flash or Java would.)

MonoGame 本身并不是跨平台的,因为每个平台都有一个版本-每个版本都包含实现XNA API所需的大量特定于平台的代码该平台.

MonoGame itself is not cross-platform, in the sense that there is a version of it for each platform - as each version contains a large amount of platform-specific code required to implement the XNA API for that platform.

(尽管实际上大量的MonoGame代码 是跨平台的,并且在不同的MonoGame版本之间共享-因为反过来,它是建立在Mono,OpenGL和OpenAL等图层上,而MonoGame这样的图层,为平台上不同的底层实现提供一致的API.)

(Although in reality substantial amount of MonoGame code is cross-platform and shared between different MonoGame versions - because it is, in turn, built on layers like Mono, OpenGL and OpenAL that, like MonoGame, provide a consistent API with a different underlying implementation on platform.)

这与Microsoft的官方XNA实施完全相同. XNA库有3个不同版本(Windows,Xbox 360和Windows Phone).它们都提供XNA API.使用XNA API的代码可以在任何这些平台上构建.

This is exactly the same as Microsoft's official XNA implementation. There are 3 different versions of the XNA library (Windows, Xbox 360, and Windows Phone). They all provide the XNA API. And your code that uses the XNA API can be built for any of those platforms.

MonoXNA已经过时了,它的大部分有用代码无论如何都已将其纳入MonoGame.

MonoXNA is pretty out of date, and most of its useful code has made it into MonoGame anyway.

据我所知,目前还没有其他使用Mono在OSX上运行的XNA实现.有 ExEn ,它使用Mono-但仅适用于iOS和Android.

As far as I know there are no other current XNA implementations that use Mono to run on OSX. There's ExEn, which uses Mono - but only for iOS and Android.

在Xbox 360上使用XNA的唯一选择是使用Microsoft的版本.但这并不妨碍您也针对MonoGame编译代码.

Your only option for using XNA on Xbox 360 is to use Microsoft's version. But this doesn't preclude you from also compiling your code against MonoGame.

这篇关于MonoGame真的是跨平台的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆