大家好!我的名字叫Rong Lu,是Visual C++团队的程序经理。上周在构建大会上,我做了一个关于“使用VisualStudio2013和更新2进行DirectX图形开发”的演讲,其中我们介绍了VisualStudio2013更新2中几个令人兴奋的新特性( 下载更新2 RC )用于DirectX开发。万一你错过了,去看看 记录 或者在这篇博文上读到。
如果您使用的是VS 2013,那么您已经可以访问这些功能。Visual Studio 2013 Express for Windows现在提供了所有功能( 安装 ),专业及以上SKU。
入门
项目模板
- 在“新建项目”对话框中,查找 Visual C++ -> 应用商店 节点,您将发现两个模板: DirectX应用程序 , DirectX和XAML应用程序 . 这些模板在VS 2013中进行了重大更新。它们组织得更好,旨在使其更易于用作起点。伊恩·哈夫有一个 博客文章 更详细地描述这些模板。
如果新的项目模板
- 用于添加新的着色器文件:计算着色器、域着色器、几何体着色器、外壳着色器、像素着色器、顶点着色器。
- 用于添加图形文件:.bmp、.gif、.jpg、.png、.tif、.dds、.tga、.fbx、.dgsl
图形资源创作
图像编辑器
您可以使用图像编辑器来处理DirectX应用程序开发中使用的各种丰富的纹理和图像格式这包括支持流行的图像文件格式和颜色编码、alpha通道和MIP映射等功能,以及DirectX支持的许多高度压缩、硬件加速的纹理格式。
模型编辑器
可以使用“模型编辑器”(Model Editor)从头开始创建基本的三维模型,也可以查看和修改使用全功能三维建模工具创建的更复杂的三维模型。
着色器设计器
即使您不知道HLSL编程,也可以使用着色器设计器为您的游戏或应用程序创建自定义视觉效果。
内容管道
您可以使用它将原始资产转换为DirectX可以理解的格式。visualstudio有内置的内容管道,用于转换纹理和图像、三维模型和着色器。
在VS中编译HLSL
在编写HLSL着色器时,可以使用语法着色、缩进和大纲显示,并且MSBuild自动支持Microsoft HLSL编译器(fxc.exe)。
图形诊断
图形诊断 帮助您调试DirectX游戏和应用程序中的渲染错误。如果您已经在VS 2012中使用过该工具,那么以下是VS 2013的新增功能:
- 在x86、x64和ARM机器和设备上进行远程调试。看到了吗 如何:更改图形诊断回放机 和 如何:对ARM设备使用图形诊断 .
- 计算着色器调试。 演练:使用图形诊断调试计算着色器
现在进入更新2中的新事物!在 Visual Studio 2013更新2 RC 上周上线的,还有更多的功能添加到DirectX开发中!
使用Windows通用应用程序将DirectX应用程序带到Windows Phone、平板电脑和PC上
在上周的构建大会上,我们介绍了WindowsUniversalApps,它旨在帮助开发者为Windows8.1和WindowsPhone8.1创建通用的WindowsApps。Visual Studio 2013 Update 2 RC包含Windows Universal apps支持,允许您创建一个应用程序,该应用程序可以轻松定制,以便在Windows手机、平板电脑和PC上呈现符合上下文的体验。请参阅Kevin Gallo的 通过通用扩展平台通用性 窗户 应用程序 .
如何在DirectX应用程序中使用它? directxapi已经很好地融合在一起了 在Windows 8.1和Windows Phone 8.1之间,使跨平台共享DirectX代码变得非常容易。在下面的这个例子中,100%的DirectX在共享节点中,甚至主XAML页面也是共享的!如果你有兴趣,看看我的 会话录制 在这里,我演示了如何使现有的windows8.1应用程序跨Windows和windowsphone工作。
如果您刚开始学习,那么将VisualStudio项目模板用于通用应用程序可能是一个很好的起点。
图形诊断
图形诊断变得更好了!除了VS 2013中已有的功能外,在更新2中,我们不仅增强了图形调试器,包括新添加的对调试Windows Phone 8.1的完全支持,还添加了全新的图形探查器!
图形调试器增强
连续捕获
现在,一次捕获最多可以捕获30个连续帧。
程序捕获
编程捕获对于在从不调用 出席 ,或者在手动测试中很难预测和捕获渲染问题,但可以通过使用有关运行时应用程序状态的信息以编程方式进行预测。
增强图形事件列表
一个新的 抽签通知 添加了一个视图,该视图在由Draw调用组织的层次结构中显示捕获的事件及其状态。您可以展开draw calls以显示draw调用时的当前设备状态;您还可以进一步展开每种状态,以显示设置其值的事件。
调试Windows Phone 8.1应用程序
图形调试器现在完全支持在Phone emulator或tethered Phone中调试Windows Phone 8.1应用程序!
图形探查器(更新2中新增!)
图形框架分析 收集捕获帧的性能度量;此外,它还执行了一组预定义的实验,这些实验提供了应用各种纹理技术时性能将如何受到影响的见解。最后但同样重要的是,帧分析还从硬件收集性能计数器。该功能在Windows 8.1和Windows Phone 8.1设备上的工作原理相同(该功能依赖于时间戳查询,而时间戳查询不是Windows Phone 8的一部分)。肖恩·哈格里夫斯已经 关于这个功能的博客 . J
更多资源
下面是一些更有用的资源,可以帮助您开始DirectX编程。这些不包括在visualstudio中,但是可以从web上下载。
– Visual Studio 3D初学者工具包 是展示模型和纹理设计、资源格式转换和运行时加载的示例解决方案。可在以下网址下载 http地址:// 又名ms/vs3dkit .
– DirectX工具包 是一个共享源实用程序库 这使得D3D更容易用于加载纹理和模型、绘制精灵和文本、播放声音效果和着色器以进行简单渲染。它支持Windows应用商店、Windows Phone、桌面和Xbox One的所有最新平台。在CodePlex上提供: https://directxtk.codeplex.com /
– Direct3D教程示例 下载 .
将DirectX Windows Phone 8.0应用迁移到Windows Phone 8.1
如果您有一个针对Windows Phone 8.0的现有DirectX应用程序,下面是一个 白皮书 介绍如何将其迁移到Windows Phone 8.1。
以下是VS在VS 2013 plus Update 2中为DirectX开发提供的完整图片。我们对最新的VS 2013更新感到非常兴奋,希望您也喜欢这些功能。如果您尚未安装更新, 立即获取VS 2013更新2 RC ! 一如既往,我们期待着听到您对您喜欢或不喜欢的内容的评论。