使用 Visual Studio 3D 初学者工具包(Starter Kit)进行 Windows 应用商店游戏开发

阅读数:1957 2013 年 1 月 24 日

话题:语言 & 开发

Visual Studio 3D 初学者工具包是游戏开发示例的集合,指导开发者如何在Visual Studio 2012项目的帮助下为Windows 应用商店开发基础游戏。它同时支持消费 Visual Studio 工具所生产的运行时素材,加载并呈现网格(meshes)、质地(textures)和着色(shaders)等。

微软公司 Visual Studio 团队的主要开发领队(Principal Development Lead)JP Dupless 和软件开发工程师Roberto Sonnino最近在为微软的Channel 9网站创建的视频中利用一个Visual Studio 2012 C++项目演示了初学者工具包的功能。

该视频演示了怎样使用基于 Windows 应用商店的 3D 应用和游戏的常用特性,比如怎样加载质地、模型和着色。同时,你还能学习到其他功能的用法,比如 Camera 类、DirectX的 XAML、模型和图片查看器、以及能创建 3D 场景的着色设计器。

在网页Visual Studio 开发者代码示例 上可以找到 Visual Studio 3D 初学者工具包,其支持 Visual Studio 2012 的所有版本,包括 Windows 8 上的Visual Studio 2012 Express

InfoQ:你能够和 我们分享一下 Visual Studio 3D 初学者工具包的核心功能吗?

Visual Studio 3D 初学者工具包主要是一些示例,演示如何使用 Visual Studio 2012 工具来简化基于 Windows 应用商店的DirectX 3D开发的一般任务。其演示了如何引入网格、如何使用 Visual Studio 着色设计器创建的像素着色(pixel shaders)、如何为 ARM 设备和过时的显卡创建和加载备选着色(fallback shaders)、以及如何显示带骨骼动画(bone animations)的网格。

InfoQ:我们知道 Visual Studio 2012 支持 DirectX,能和我们谈谈为什么需要初学者工具包吗?

我们创建 Visual Studio 3D 初学者工具包以帮助阐明如何构建 Windows 8. 上的游戏。如果你想学习如何进行游戏编程,但从未使用过 DirectX,你会发现构建 3D 游戏所需的知识的广度是令人沮丧的。为了帮助开发者着手进行游戏编程开发,我们提供了便于学习和采用到自己的项目中的示例代码。初学者工具包包括了一个具有若干帮助类和方法的 VSD3DStarter.h 头,以及使这项工作更加容易的 GameBase 类(.h and .cpp)。

 

初学者工具包项目同时包括了具有图片和网格等图形素材的真实示例,所以你可以在真实的项目中研究 Visual Studio 图形工具,而不必努力寻找各种素材文件。比如,如果你使用 3D 素材管道(3D Asset Pipeline)为运行时准备网格、质地和着色,你还必须学习如何将他们加载进你的应用程序。初学者工具包演示了如何这样做。

 

最终,Visual Studio 2012 对 DirectX 的支持由 6 个主要功能所组成:

 

Visual Studio 图形调试器(Graphics Debugger)  

着色设计器(Shader Designer)  

图片编辑器(Image Editor)  

模型编辑器(Model Editor)  

3D 素材管道(Asset Pipeline)  

HLSL IDE 和 MSBuild 支持

初学者工具包为你提供了完整的项目示例,所以你能够在 Windows 应用商店的真实项目中学习如何使用这些工具。

InfoQ:该工具包支持所有.NET 框架语言吗?比如 C# 和 VB?

初学者工具包只支持 C++;需要注意的是 Visual Studio 工具仍可以在其他项目中使用。比如在编译时编译 HLSL 文件、或者将图片转换成 DDS 格式以便在 3D 应用程序中使用。

InfoQ:可以在 Windows 7 和 Visual Studio 2010 中使用初学者工具包吗?

初学者工具包是为基于 Windows 应用商店的应用(只支持 Windows 8)而专制的。VS 图形工具能够被用于在 Windows 7/8 上开发 Windows 桌面 DirectX 应用程序,但它们只被集成在 Visual Studio 2012 中。

InfoQ:可以使用该工具包来构建 Windows Phone 的 3D 应用吗?

该工具包可能是 Windows Phone 应用的恰当的入门材料,因为 Windows Phone 在编程模式上和 Windows 8 非常相近。

InfoQ:有可能在 ASP.NET(基于 Web 的环境)中开发 3D 应用程序吗?

该工具包的意图是指导如何构建脱机的 Windows 8 应用;它并不涉及其他平台。

InfoQ:你知道现实世界中有什么产品 / 应用是完全使用 Visual Studio 2012 3D 工具包构建的吗?

因为目前该工具包还刚出来,我们不知道现实世界中有哪个产品是完全使用该工具包构建的(除了我们自己的Towers of Hanoi 3D)。

InfoQ:微软有计划将 3D 工具包整合进 Visual Studio 2012 吗?

就目前而言,评论将 3D 工具包整合进 Visual Studio 2012 有何前途为时尚早。得知社区有在使用当前的 3D 工具包并收到他们对于改进该工具的建议,我们感到很兴奋。我们将会仔细分析如何改进工具以更好地帮助 3D 开发者。

InfoQ:能给我们说说初学者工具包未来的方向吗?

用户的反馈促使我们最近更新了该工具,添加了备用着色、顶点着色和带有骨骼动画的网格等的支持。

Gavin1969

3D 初学者工具包相当出色,很感谢它的快速更新和在 Surface RT 中的出色表现。