c# XNA 或 c++ directX11 在未来

c# XNA or c++ directX11 in the future?

本文关键字:未来 directX11 c++ XNA      更新时间:2023-10-16

我最近开始学习XNA,非常喜欢它,它是托管代码。但是,在进行了一些阅读之后,似乎对于Windows 8和Windows 8手机,XNA将不会更新以使用这些新功能,并且将使用Directx11。

那么,有谁知道这是不是真的?我不懂任何 c++,但我对 c# 相当有信心,所以我想坚持使用 XNA,但如果将来会使用 c++ 和 Directx,也许我现在应该切换?另外,如果我知道 c#,学习 c++ 有多难?

如果情况是 directX 是未来的方式,我可能会使用 Unity,这样我就可以继续使用 C#。

非常感谢

有关此主题的任何帮助,非常感谢

在去年的Build大会和其他场合,MS的Herb Sutter是这样谈论的(转述):


在过去的十年中,硬件功能变得更加强大,以至于我们能够承受像.net这样的生产语言的开销。如果我们突破性能限制,那又怎样,明年计算机将毫不费力地处理它。使用托管语言制作软件的成本低于本机语言,并且我们拥有减轻托管开销的硬件能力。

在未来十年中,用于完成工作的硬件将变得越来越小,移动性越来越低,功能越来越弱,越来越节能。突然之间,软件中的代码效率和性能变得越来越重要。到目前为止,本地人具有这种优势。


我想由于图形软件(游戏)可以是一个快速达到性能限制的开发领域,因此这可能是最早经历这种转变的领域之一,这是可以理解的。

我所知(以及从网络上找到的信息来看),Windows将远离XNA,尽管从技术上讲它应该是向后兼容的。如果您正在寻找有关 XNA 未来的文章:

https://gamedev.stackexchange.com/questions/22292/what-is-the-future-of-xna-in-windows-8-or-how-will-manged-games-be-developed-in

我会

坚持使用 C#,您的开发速度更快,性能差异不会太大,因此您不必抱怨它。

如果你不想也瞄准移动平台,我建议使用OpenGL,它很难开始,但你应该能够开发一个支持移动和桌面平台的框架(使用MonoTouch和Monodroid)。


对于那些现在尖叫DirectX更好的人:我知道,一般来说你是对的,但DirectX在iOS和Android等移动平台上不受支持。所有平台都有一个XNA克隆,它可能正在工作,但我不知道它是否会支持新的DirectX/OpenGL功能。