为你的 Windows 10 游戏选择一种技术

有多种编程语言和图形技术可在 Windows 10 游戏中使用。你所采用的路径具体取决于你正在开发的游戏类型、你的开发工作室的经验和偏好,以及你的游戏的特定功能要求。你是使用 C#、C++ 或 JavaScript? 还是使用 DirectX、XAML 或 HTML5?

了解详细信息以帮助你作出适合你游戏的选择。

选择技术

DirectX

对于最高性能的 2D 和 3D 图形以及多媒体,可选择 Microsoft DirectX。Windows 10 中的新功能 Direct3D 12 可提供了类似于控制台 API 的强大功能,而且比以往更快更高效。你的游戏可以充分利用现代图形硬件,还可以展示更多的对象、更丰富的场景以及增强的游戏效果。Direct3D 12 可跨 Windows 10(包括电脑和 Xbox One)提供经优化的图形。如果想要使用 Direct3D 11 中熟悉的图形管道,你仍然可以从添加到 Direct3D 11.3 的新呈现功能和优化功能中获益。如果你是一名忠诚可靠基于 Win32 的桌面版 Windows API 开发人员,你仍然可以在 Windows 10 中使用该选项。

DirectX 中的广泛功能和深度平台集成可为要求极高的游戏提供所需的功能和性能。

XAML

XAML 是一种易于使用的声明性 UI 语言,它具有一些便捷的功能,如动画、情节提要、数据绑定、可缩放的基于矢量的图形、自动调整大小和场景图。XAML 非常适用于游戏 UI、菜单、子画面和 2D 图形。若要简化 UI 布局,则可以使用 XAML,因为它与诸如 Expression Blend 和 Microsoft Visual Studio 等设计和开发工具兼容。XAML 通常与 C# 结合使用,但在 C++ 是你的首选语言时,或者你的游戏对 CPU 要求较高时,C++ 也是一个不错的选择。

HTML 5

超文本标记语言 (HTML) 是一种常见的 UI 标记语言,适用于网页、应用和胖客户端。Windows 游戏可将 HTML5 用作功能完备的呈现图层,以便提供 HTML 的熟悉功能、对 Universal Windows Platform 的访问权限,并支持诸如 AppCache、Web Worker、Canvas、拖放、异步编程和 SVG 等现代 Web 功能。在后台,HTML 呈现将充分利用 DirectX 硬件加速的功能,使你即使不编写任何额外的代码,也仍然可以从 DirectX 的性能中获益。如果你擅长于 Web 开发、打算移植 Web 游戏或者想要使用与其他选项相比更易获取的语言和图形图层,则 HTML5 是一个不错的选择。HTML5 与 JavaScript 结合使用,但也可用于调用使用 C# 或 C++/CX 创建的组件。

JavaScript

JavaScript 是一种动态脚本语言,广泛用于现代 Web 应用程序和胖客户端应用程序。

Windows JavaScript 应用可以采用一种简单而又直观的方式访问 Universal Windows Platform 中的强大功能 – 作为面向对象的 JavaScript 类的方法和属性。如果你来自于 Web 开发环境、已熟悉 JavaScript 或者想要使用 HTML5、CSS、WinJS 或 JavaScript 库,则对于你的游戏而言,JavaScript 是一个不错的选择。如果你面向 XAML,请改为选择 C# 或 C++/CX。如果你面向 DirectX,请选择 C++/CX。

C++

C++/CX 是一种高性能、低开销的语言,可提供速度、兼容性和平台访问的强大组合。利用 C++/CX,可轻松使用 Windows 10 中所有出色的游戏功能,包括 DirectX 和 Xbox Live。你还可以重复使用现有的 C++ 代码和库。C++/CX 可创建快捷的本机代码,该代码不会使垃圾回收产生开销,可确保你的游戏拥有出色的性能和低功耗,从而可以延长电池使用时间。将 C++/CX 与 DirectX 或 XAML 结合使用,或使用这两者的组合来创建游戏。

C#

C#(读作“C sharp”)是一种现代创新型语言,它简单、功能强大、类型安全,而且面向对象。C# 在保持 C 语言的亲切和直观风格的同时,还支持应用的快速开发。尽管 C# 易于使用,但它还具有许多高级语言功能,如多态性、委派、lambdas、关闭、迭代方法、协变以及语言集成查询 (LINQ) 表达式。如果你面向 XAML、想要快速开始开发你的游戏或者之前有过 C# 经验,则 C# 是一个不错的选择。C# 主要与 XAML 结合使用,因此如果你想要使用 DirectX,请改为选择 C++,或者编写你游戏的一部分作为与 DirectX 交互的 C++ 组件。

合并图形技术

Microsoft DirectX 图形基础结构 (DXGI) 通过多种图形技术提供交互性和兼容性。对于高性能图形,你可以将 XAML 和 DirectX 结合使用,具体操作方式是:将 XAML 用于菜单和其他简单 UI,而将 DirectX 用于呈现 2D 和 3D 场景。DXGI 还可在 Direct2D、Direct3D、DirectWrite、DirectCompute 和 Microsoft 媒体基础之间提供兼容性。

使用 Windows 运行时组件将多种语言结合使用

借助 Universal Windows Platform,可轻松将采用不同语言编写的组件结合使用。使用 C++、C# 或 Visual Basic 创建 Windows 运行时组件,然后通过 JavaScript、C#、C++ 或 Visual Basic 调用这些组件。采用你所选定的语言编写你游戏的部分程序,是一个不错的方法。借助组件,你也可以使用仅提供特定语言版本的外部库,并使用你已编写的传统代码。

游戏引擎

使用游戏引擎可加速游戏开发,并且可让你快速使用新技术(如 DirectX 12)开始开发。
Unity

Unity 5 将支持 DirectX 12! Unity 5 将支持 DirectX 12,并在 Unity 开发平台中引入 Direct3D 12 的性能和效率。享受从头开始设计的图形管道所带来的益处,以充分利用多个核心和现代图形硬件。借助 Unity 5 以及 DirectX 12,你可以按照预期提高帧速率、延长电池使用时间并提供极具震撼力的图形。

Unity 5 是备受赞誉的下一代开发平台,用于创建 2D 和 3D 游戏以及交互式体验。Unity 5 将为你提供全新的酷炫十足的艺术功能、增强的图形功能以及改进的开发效率。

Unreal Engine

Unreal Engine 4 是面向所有类型的游戏和开发人员推出的一整套游戏开发工具。从移动设备到要求非常高的控制台和电脑游戏,Unreal Engine 已在全球开发人员中得到广泛的采用。订阅了 Unreal Engine 4 的 DirectX 12 提前访问计划的成员,将可以访问支持 DirectX 12 的 Unreal Engine 4.4 开发项目。

电源更优,性能更佳: DirectX12 上的游戏

Direct3D 12 针对 Windows 10 上的游戏提供新的性能改进。了解如何通过新的 Direct3D 12 API 构建游戏引擎,从而最大程度降低 CPU 开销、提升 GPU 效率并改善帧速率稳定性。了解在 Direct3D 12 上构建高性能、高效游戏引擎的基础知识,以及应在何处查找可供深入了解的最佳资源。

观看此 GDC 2015 开发演讲

创建 Windows 10 游戏

入门

开始开发你的 Windows 10 游戏所需的下载、工具和信息。

设计

用于宣传和启发设计的库和指南。

开发

用于 Windows 10 开发的文档和技术信息的完整库。

发布

计划和合作关系,可帮助你在 Windows 应用商店中发布适用于手机、电脑和 Xbox One 的游戏。

此页对你是否有帮助?
要进行其他反馈?
谢谢! 我们感谢你的反馈。
关注我们 Twitter 博客 Facebook Twitter 博客 Facebook webchat line