带有 Visual Studio 2012 Express 的 Directx 9
Posted
技术标签:
【中文标题】带有 Visual Studio 2012 Express 的 Directx 9【英文标题】:directx 9 with visual studio 2012 express 【发布时间】:2013-07-20 00:27:54 【问题描述】:我决定在装有 ATI Radeon X1200 卡的旧笔记本电脑上学习 directx。 使用 GPU-Z.0.7.2 程序,我发现我的卡支持 directx 9 /SM2.0 并且具有 4 Pixel / 2 Vertex 的着色器。 在我的 Windows 7 上使用 dxdiag 我发现 Directx 版本是 Directx 11。然后我下载了 Visual Studio 2012 Express 但我还没有安装它。 由于我的卡仅支持 DirectX 9,因此我将阅读《使用 DirectX 9 进行 3D 游戏编程简介》一书。 现在我必须下载什么版本的直接 SDK?下载 SDK 后,我应该先安装什么 SDK 或 Visual Studio 2012 Express?书好吗?我的意思是这本书还有其他版本,但它们支持 directx 9c、directx 10 和 directx 11。
非常感谢。
【问题讨论】:
我认为这个问题对您的需求来说太具体了。也就是说,您应该按任一顺序安装 SDK 和 VS。我无法评论那本书。如果您想要(辞职)目标 DX 9,我建议您获取该版本的 SDK 【参考方案1】:在我的 windows 7 上使用 dxdiag 我发现 directx 版本是 directx 11.
这是 DirectX 运行时版本,而不是 SDK 版本。因此,您使用哪个版本的 SDK 来开发您的程序并不重要。
正如其他人所说,安装顺序无关紧要。
您提到的book 适合新手。但我建议你从着色器版本开始,因为从 DirectX 10 开始放弃了固定的管道功能,例如转换和照明,它们都移到了着色器,那本书有 shader version。
有很多学习DirectX的资料和资源,我贴一些页面供大家参考。
http://www.directxtutorial.com/LessonList.aspx?listid=9
http://www.braynzarsoft.net/index.php?p=DX11Lessons
http://www.rastertek.com/tutindex.html
DirectX SDK 示例也是很好的选择。
【讨论】:
该书有好几个版本,但哪一个最适合我的情况:DirectX 9.0c 3D 游戏编程简介:一种着色器方法或 Direct3D 10.0 3D 游戏编程简介或 3D 简介使用 Direct3D 11.0 进行游戏编程? 我个人想从DirectX 10开始,但是你说你的显卡只支持DirectX 9,你确定要从DirectX 10/11开始吗?【参考方案2】:您应该能够使用 Direct3D 11,同时仍通过 D3D_FEATURE_LEVEL
枚举(您可以在 D3D11CreateDeviceAndSwapChain
中指定)定位 Direct3D 9 设备。
【讨论】:
【参考方案3】:Microsoft DirectX SDK(2010 年 6 月)包含 DirectX 11 和 DirectX 9 标头和文档。安装顺序并不重要(我在安装 Visual Studio 之前在 Code::Blocks 中使用了 SDK,它运行良好),因为它实际上只是头文件和调试 dll 的集合,还有一堆东西可以帮助你开始了。
我个人在学习图书馆时不使用书籍 - 我查看文档,这是对材料的第一手解释,或者搜索教程(尽管您应该在教程中阅读任何内容盐)。还有几个网站和视频很好地解释了图形管道。否则我真的无法评论这本书。
【讨论】:
【参考方案4】: 如果您不针对 Windows XP 或更早的操作系统,扔掉 DirectX 9 书,忘记它(如果您不针对没有服务包的 Vista,则与 DirectX 10 相同),并且拿 DirectX 11 一个 Luna 的书很棒,但是,IMO,zdd 提到的在线教程更好。并且免费。但是,要写出很酷的东西,您需要阅读的不仅仅是一本书或一系列教程。把最好的部分混合起来! 您可以使用 DirectX 11 API(适用于 Windows Vista SP2 和更高版本的操作系统)进行开发,但仍针对 DirectX 9 硬件 (feature level 9.3)。着色器是必须的。爱他们! 在安装 Visual Studio 2012 或更高版本时,您还会获得一份 Windows SDK 副本。 不要安装独立的 DirectX SDK,因为它已经过时了。从 Windows 8 开始,DirectX SDK 是 Windows SDK 的一部分。仅当您确实需要旧的东西时才安装独立的 DirectX SDK,例如 D3D11X 或效果框架(用于 Luna 书籍)。编码愉快!
【讨论】:
以上是关于带有 Visual Studio 2012 Express 的 Directx 9的主要内容,如果未能解决你的问题,请参考以下文章
带有 Visual Studio 2012 Express 的 Directx 9
带有 Visual Studio 2012 RC 的 MVC 4 / Razor 中的可移植类库?