XNA不再存在,因为凤凰从灰烬中升起(译文)
By robot-v1.0
本文链接 https://www.kyfws.com/games/xna-is-no-more-as-the-phoenix-rises-from-the-ashes-zh/
版权声明 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
- 10 分钟阅读 - 4672 个词 阅读量 0XNA不再存在,因为凤凰从灰烬中升起(译文)
原文地址:https://www.codeproject.com/Articles/889025/XNA-is-no-more-as-the-phoenix-rises-from-the-ashes
原文作者:Simon Jackson
译文由本站 robot-v1.0 翻译
前言
We have finally reached the end of an era and the dawn of the next with the MonoGame project. The latest release has now broken its ties to the old XNA framework and stands alone.
通过MonoGame项目,我们终于到达了时代的尽头和下一个时代的曙光.最新版本现已打破了与旧XNA框架的联系,并且独立存在. 我个人讨厌链接链接标题,但是这是完全合理的.(I personally hate link-baity titles, however this one is completely justified.)
我们终于到达了时代的终结,而下一个时代的黎明(We have finally reached the end of an era and the dawn of the next with the) 单人游戏(MonoGame) 项目.最新版本现已打破了与旧XNA框架的联系,并且独立存在.(project. The latest release has now broken its ties to the old XNA framework and stands alone.)
XNA不再需要使用MonoGame(No longer is XNA required to use MonoGame)
这是一个史诗般的里程碑,因为MonoGame终于实现了其梦想,超越了XNA必须提供的功能(有些人可能会说它已经在MonoGame支持的所有平台上做到了这一点),并且正在构建XNA前所未有的功能.当然,这不是一个大的前冲,而是迈出的小一步.(This is an epic milestone as MonoGame finally realises its dream of journeying beyond the realms of what XNA had to offer (some might argue it already did that with all the platforms that MonoGame supports) and is building capabilities that never existed before in XNA. Granted this is not a big rush forward but small baby steps inching forward.)
以前发生的一切(Everything that has come before)
就目前而言,MonoGame实际上实现了XNA的全部功能,这意味着您所有的旧XNA 4.0项目都将与MonoGame兼容.一路上可能会有一两个小小的毛病(这个婴儿正在迈出世界上第一个引以为傲的新步伐),但是它有一个耐心的传统,即耐心的开发人员支持这个项目.(As it stands, MonoGame implements practically the full set of functionality that XNA did, meaning that all your old XNA 4.0 projects will be compatible with MonoGame. There may be one or two little hiccups (this baby is taking its first proud new steps in the world) along the way but it has a proud tradition of hardy developers backing up this project.) 我是否提到过MonoGame团队中没有人为此得到报酬?它完全由开发人员自由时间和精力提供资金!你要尊重(Did I mention that no one on the MonoGame team is getting paid for this? It is completely funded by developers free time and effort! You have to respect) 对项目的任何贡献都可以满足项目的需求,例如服务器,网站和商品!(Any contributions to the project go in to the project’s needs, like Servers, Websites and merchandise!)
勇敢的新世界(A brave new world)
您可能想知道是什么让此公告如此特别,为什么所有的盛况都如此?(You might wonder what makes this announcement so special, why all the pomp and circumstance?) 答案很简单,XNA关系已经破裂,开发人员现在可以在他们选择的平台上开发他们的MonoGame项目.在3.3版本中,您现在可以完全开发的平台包括:(The answer is simple, the XNA ties have been broken and with that developers can now develop their MonoGame projects on their platform of choice. With the 3.3 release the platforms you can fully DEVELOP on now include:)
- Windows 7/8/8.1(但您已经知道)(Windows 7 / 8 / 8.1 (but you knew that already))
- MacOS(使用MonoDevelop)(MacOS (using MonoDevelop))
- 的Linux(Linux) 现在这部分并不是真正的新内容,您可以在此之前完成,但是您不能做的是构建项目所需的所有内容.在3.3之前的版本中,您需要一个Windows主机来编译您的内容.但是,在3.3版本中,您现在可以在上述所有平台上执行此操作,不再需要Windows(但是,谁愿意放弃Visual Studio?)(Now this part isn’t really new, you could do that before, however what you couldn’t do was build all the content needed for your project. Prior to 3.3 you needed a Windows host somewhere to compile your content. With 3.3 however, you can now do that on all the above platforms, Windows is no longer required (but who wants to give up visual studio anyway?)) 使用新的MonoGame Content Builder工具,开发人员可以在Windows,MacOS或Linux上构建内容.(With the new MonoGame Content Builder tool, developers can build content on Windows, MacOS or Linux.) 甚至还有新的MonoDevelop(或Xamarin Studio,如果您愿意的话)插件和模板(感谢MG团队的Dean Ellis),因此现在已完全支持.(There are even new MonoDevelop (or Xamarin Studio if you prefer) plugins and templates (Thanks to Dean Ellis of the MG team), so this is now fully supported.)
支持平台(Supported platforms)
从3.3版本开始,MonoGame当前支持的平台列表包括:(The currently supported list of platforms maintained by MonoGame as of the 3.3 release include:)
- 安卓系统(Android)
- iOS(仅64位金属)(iOS (64bit metal only))
- 的Linux(Linux)
- MacOS(net4,net45,MonoMac和Xamarin.Mac)(MacOS (net4, net45, MonoMac and Xamarin.Mac))
- 欧亚(Ouya)
- Windows OpenGL(Windows OpenGL)
- Windows DirectX(Windows DirectX)
- Windows 8/8.1(Windows 8 / 8.1)
- Windows Phone 8/8.1(Windows Phone 8 / 8.1)
- Windows通用应用程序(我会回到这里)(Windows Universal apps (I’ll come back to this)) 有一个实验性的3.3 PCL平台版本,但是仍在进行中.使用它没有问题,只是要注意某些类/名称空间无法识别.这意味着目前某些代码无法包含在PCL中,但我们正在对此进行努力.(There is an experimental 3.3 PCL platform release, however this is still a work in progress. There are no issues using it, just be aware some classes / namespaces aren’t recognised. All this means is that some code can’t live in the PCL at the moment but we’re working on this.) MonoGame还支持大多数游戏机(将来会更多),但您需要与他们签订合同,然后才能开始考虑!如果您有具体计划,请与我们联系,团队可以为您提供帮助.(MonoGame also supports most consoles (more in the future) but you need contracts with them before you can even start considering it!. Chat to us if you have specific plans and the team can help.)
入门(Getting Started)
我将在这里介绍太多内容,因为我正在计划一系列入门教程/视频来帮助您入门.(I won’t go in to this too much here as I am planning a series of starter tutorials / videos to help you get going.) 首先,您需要从以下位置安装MonoGame开发模板和工具:(To get started you need to install the MonoGame development templates and tools from:) http://www.monogame.net/2015/03/16/monogame-3-3-2/(http://www.monogame.net/2015/03/16/monogame-3-3-2/) 在这里您会发现:(Here you will find:)
- 适用于Visual Studio的MonoGame 3.3(MonoGame 3.3 for VisualStudio)
- Mac版MonoGame 3.3二进制文件(MonoGame 3.3 Binaries for Mac)
- 适用于Mac的MonoGame 3.3管道GUI工具包(MonoGame 3.3 Pipeline GUI Tool Package for Mac) 另外(如果您愿意),您还可以在NuGet上找到MonoGame 3.3:(Also (if you prefer) you can also find MonoGame 3.3 on NuGet:)
当然,您也可以在现有项目之上安装最新版本,以保持最新状态.(Which of course you can also install on top of existing projects to keep up to date.)
NuGet Gotcha的(NuGet Gotcha’s)
在安装某些NuGet之前,您需要了解一些有关NuGet的提示(任何未提及的都很好)(There are a few pointers about the NuGet’s you need to be aware of before installing some of the NuGets (any not mentioned are perfectly fine))
- WindowsGL –使用WindowsGL,您需要在安装NuGet之前从项目中删除" SDL.DLL".这只是NuGet无法解决的冲突.不用担心,NuGet会为您安装一个新的.(WindowsGL – With WindowsGL you need to remove the “SDL.DLL” from the project before installing the NuGet. This is just a conflict that NuGet cannot resolve. No worries through, the NuGet installs a fresh one for you.)
- Windows Phone 8.0 –因为项目模板随附了x86和ARM dll,所以NuGet无法卸载所有引用.这会导致引用重复错误.要解决此问题,您需要在安装前编辑项目.csproj文件并删除对MonoGame.Framework的引用(您可以在以后进行操作,这只会使它更加棘手!)(Windows Phone 8.0 – Because the project template ships with both x86 and ARM dlls, NuGet isn’t able to uninstall all the references. This causes reference duplication errors. To resolve this you will need to edit your projects .csproj file and remove referenced to MonoGame.Framework before installing (you can do it afterwards, it just makes it more tricky!)) 我将在以后的文章中详细介绍这些内容.(I’ll go over these in more detail in future posts.)
XNA颂歌(An Ode to XNA)
现在,仅由于MonoGame继续前进,清理房间并离开了它曾经知道的家,而进行了一次冒险的新冒险,这并不意味着您仍然无法使用XNA.(Now just because MonoGame has moved on, cleaned out its room and left the home it once knew, venturing on a brave new adventure, doesn’t mean you still can’t use XNA.) XNA仍然存在于全球许多大学中,并且仍在为Xbox 360的Xbox Live Gaming Service上发布(并赚钱)的开发人员非常积极地使用.事实上,在最近的Game Jam(赫尔大学3字游戏)中果酱(XNA still lives on in many universities across the globe and is still used quite aggressively by developers still publishing (and making money) on the Xbox Live Gaming Service for the Xbox 360. In fact at a recent Game Jam (The hull university 3 word game jam) http://www.robmiles.com/journal/2015/3/14/three-thing-game-finals(http://www.robmiles.com/journal/2015/3/14/three-thing-game-finals) )有很多学生在XNA上构建他们的项目(实际上是大多数),一些冒险的冠军使用MonoGame,另一些(我只能称其为疯狂)的开发人员使用OpenGL,MatLab和一个勇敢的灵魂在做直接光栅图绘制.() there were many students building their projects in XNA (the majority actually), a few adventurous champions were using MonoGame plus a few (what I can only call crazy) devs using OpenGL, MatLab and one brave soul doing direct Raster drawing.) 我要感谢微软的梦想家,他们敢于梦想着一个托管游戏开发世界,在这个世界中,开发人员可以打破C ++束缚,并且在构建游戏方面确实很有趣,我知道我确实做到了.(I have to thank the visionaries at Microsoft who dared to dream of a managed game development world, where devs could break their C++ shackles and actually have fun building games, I know I certainly did.) XNA MonoGame万岁(Long Live XNA MonoGame)
我们还没死吗?(Are we not dead yet?)
由于XNA即将淘汰,因此我已经听到了网络上的各种评论,MonoGame也是如此.或者,我很久没收到MonoGame的消息了,也没有任何更新,它们已经死了吗?(I’ve heard various comments around the web thinking because XNA is on its way out, so must MonoGame. Or, I’ve not heard from MonoGame in a long while and there are no updates, are they dead yet?) 我可以证明一个事实,即MonoGame是一个非常活跃的项目,幕后花了很多力气.(I can attest to the fact that MonoGame is a very active project, with lots going on under the hood.) 团队注意到,更新已经很少,这将在新的3.3版本之后发生变化.发布将更快,NuGet的更新将更频繁,依此类推.(The team have noted that updates have been far and few, this will change following the new 3.3 release. Releases will be out quicker, the NuGet’s will be updated more frequently and so on.) 继续关注此空间(和MG网站),应该定期发布更多更新.(Keep watching this space (and the MG site), more updates should follow on a more regular basis.)
在哪里找到更多(Where to find out more)
有关MonoGame和3.3版本的更多信息,以下是重点内容:(There is lots more info out there for MonoGame and the 3.3 release, here are the highlights:)
- MonoGame主网站(MonoGame main website)
- GitHub上的MonoGame 3.3(MonoGame 3.3 On GitHub)
- MonoGame社区站点/论坛(The MonoGame Community site / forum)
- 新的MonoGame Content Builder工具(MGCB GUI和MGCP命令行工具)(The new MonoGame Content Builder tool (MGCB GUI and MGCB commandline tool)) 附言我确实听说过最近在MonoGame的各个商店中发布的项目数量,我完全感到惊讶.这个数字比我以前想象的要大得多,我可以梦想很多! (不幸的是,保密协议阻止了我说这句话;-(但我希望我可以)(P.S. I did hear the number of projects that are now published on various stores with MonoGame recently and I was completely taken aback. The number was considerably larger than I had ever envisaged and I can dream quite big! (sadly NDAs prevent me from just saying it ;-( but I wish I could))
星际(Interstellar)
我对这篇文章不抱任何想法.您应该已经注意到,在3.3版本中,MonoGame团队正式发布了通用应用程序模板.这样,您就可以针对Windows Phone 8.1和Windows 8.1编写一个项目.对于团队来说,这是一个巨大的成就,可以将其从书包中拿出来.(I leave this post with a parting thought. You should have noticed that with the 3.3 release, the MonoGame Team officially released a Universal App template. This allows you to write one project targeting BOTH Windows Phone 8.1 and Windows 8.1. This was a tremendous achievement for the team to pull this one out of the bag.) 您可能还听说过另一家公司及其通用项目公告,所以请考虑一下.我个人无法确认/拒绝或担保MonoGame未来对Universal的任何支持计划,但是MonoGame项目的核心协调者之一SickHead Games的Tom Spilman最近确实表示:(You may have also have heard about another company and it’s Universal project announcements, so think on that. I personally cannot confirm / deny or vouch for any plans for MonoGame’s future Universal support, however Tom Spilman of SickHead Games, one of the core coordinators of the MonoGame Project, did have this to say recently:) 汤姆`斯皮尔曼(Tom Spilman) 我是MonoGame的维护者之一.它确实包含适用于Win8/Wp8的通用应用程序模板,但是我们完全希望在SDK可用后尽快支持Win10通用应用程序.(I am one of the maintainers of MonoGame. It does include a universal app template for Win8/Wp8, but we fully expect to support Win10 universal apps as soon as the SDK is available.) 那么,梦想仍在继续吗?(So, the dream lives on?)
许可
本文以及所有相关的源代码和文件均已获得The Code Project Open License (CPOL)的许可。
C# Mobile Linux XBox Windows iOS phone Monogame Ouya game 新闻 翻译