Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为WindowsPhone8开发2D游戏_C#_C++_Visual Studio 2012_Directx_Windows Phone 8 - Fatal编程技术网

C# 为WindowsPhone8开发2D游戏

C# 为WindowsPhone8开发2D游戏,c#,c++,visual-studio-2012,directx,windows-phone-8,C#,C++,Visual Studio 2012,Directx,Windows Phone 8,我想为WindowsPhone8开发一个2D游戏。我是一个专业的应用程序开发人员,这似乎是一个有趣的爱好 但我一直在努力。似乎2D游戏(绝大多数游戏)没有API可用 Windows Phone制造商似乎没有包括对Direct2D的支持。因此,除非你打算制作一个全3D应用程序,否则你就没有运气了 因此,如果您只是想制作一款漂亮的2D应用程序,以下是您的选择: 使用Xaml和C#编写游戏(性能问题?) 使用Direct3D编写游戏,但仅在一个平面上绘制 使用codeplex上的DirectX套件。它

我想为WindowsPhone8开发一个2D游戏。我是一个专业的应用程序开发人员,这似乎是一个有趣的爱好

但我一直在努力。似乎2D游戏(绝大多数游戏)没有API可用

Windows Phone制造商似乎没有包括对Direct2D的支持。因此,除非你打算制作一个全3D应用程序,否则你就没有运气了

因此,如果您只是想制作一款漂亮的2D应用程序,以下是您的选择:

  • 使用Xaml和C#编写游戏(性能问题?)
  • 使用Direct3D编写游戏,但仅在一个平面上绘制
  • 使用codeplex上的DirectX套件。它允许您使用XNA框架的API进行开发
  • 3号似乎最适合我的比赛。但我不愿意浪费时间学习XNAAPI,因为微软已经明确表示,今后不会支持它

    第二个可以,但3D开发确实很难。我宁愿不做所有这些来获得2D效果。(假设Direct2D更简单,我还没有研究过。)

    第一个似乎是最简单的,但我担心如果我的应用程序基于xaml渲染而不是DirectX,它将无法正常运行

    微软推荐的方法是什么


    又是谁决定2D游戏会被忽略呢?

    在我看来,Windows 8和Windows Phone 8的游戏开发都倒退了一步。在我看来,这主要是由于XNA的下降,但看起来他们并没有把重点放在简化上

    为了回答您的问题,尽管学习了另一个类似XNA的API,但仍然值得一试,你将能够学习并瞄准多个平台。相当多的贡献者都是,我可以看到它在相当长的一段时间内继续存在

    因此,如果您愿意学习XNA,您可以简单地为WindowsPhone7平台制作一个XNA2D游戏。这些标题(微软称)将在WindowsPhone8**上运行(情况并非如此,请参阅更新)。我知道这听起来有悖常理,但除非您真的需要使用WP8的一些新功能,否则请使用target 7.1和XNA。这是一个抛光的框架,非常适合制作2D游戏(请查看!)。一旦你完成了WP7/WP8的2D游戏,你就可以通过引用MonoGame来瞄准iPhone、Android和其他平台,代码变化很小

    也许不是一个好的选择,但另一个添加到列表中。希望有帮助

    更新
    事实证明,微软确实搞砸了WP7到WP8的开发。通过上述方法,您仍然可以在iOS、Android等平台上获得跨平台开发的优势,但WP8设备的应用商店中已开始显示WP7标题,WP7标题已被删除。

    XNA将部署到PC、Windows phone和Xbox360,visual studio甚至会为您复制不同版本的项目。XNA是制作快速2D游戏的绝佳工具。如果您想将此作为一个测试运行来完成,那么XNA就是一个不错的选择。与XNA一样简单,您也可以使用着色器执行一些非常复杂的操作。我认为你不会很快感到无聊


    如果你决定你真的喜欢游戏开发,那就继续学习DirectX吧。在进入3D游戏开发之前,先从新的开始,体验一下游戏的怪癖。与软件世界的其他部分相比,编写视频游戏更像是创建一个操作系统。不管你的目标平台是什么,用XNA打湿你的脚是你最好的选择。

    我还想指出,Unity(),有用于创建2D游戏的工具,并针对Windows Phone 8和iOS/Android发布。很抱歉反应太晚,但这仍然是一个悬而未决的问题…;-)

    您可以在Visual Studio中使用C#或Monodevelop来创建脚本,Unity已经支持通过各种工具(3DS Max、Maya、Photoshop、Gimp等)创建的模型/纹理

    它是一个专业的游戏引擎,性能智能可以毫无问题地渲染数百万个多边形(个人尝试并测试了3D),这是它应该做的

    他们的2D工具相对较新,但已经有很多教程,Unity文档总体上非常好

    ()


    祝你好运。

    你可以用。这是一个游戏开发框架,实际上是XNA game studio的当前实现。它可以与Android、Linux等一起部署到Windows Phone 8。

    另一种可能性是它包含了强大的2D物理引擎,并且具有跨平台的额外优势,因此您可以将其用于Android、Apple、Kindle,可能还有其他Windows Phone。缺点是它是基于C++的,需要相当数量的工作,并且没有IDE,它可以接近VisualStudio。

    查看诺基亚开发者指南:@普雷斯科特——使用基于XNA的DirectX工具包…我想我可以这样做,但是我不想花费我的努力学习XNA API,当MS已经说他们不支持它在Win Phone 8上。也许:注意,这是一个C++库,并没有任何与“XNA框架”相关的直接方式。相反,它是一个C++库,它以XNA C组件的设计为灵感,试图基本上实现同样的事情,其中一个作者是ShawnHar,以前的XAN GS图形引导。它完全不依赖于XNA框架。它基本上可以让你使用XNA游戏工作室C的经验,如果你正在转换到本机C++开发。对于2D游戏来说,使用
    SpriteBatch
    ,你可以获得一段很长的路。但是现在学习XNA类似于花时间学习WinForms。这是一项实用的技术,但这对于将来扩展您的技能是一种浪费。如果您认为XNA是浪费时间,我会使用DirectX和ma