首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 游戏天堂 > 游戏开发 > 如何在D3D9中调试shader
【标  题】:如何在D3D9中调试shader
【关键字】:D3D9,shader
【来  源】:http://blog.csdn.net/skyman_2001/archive/2007/04/14/1564211.aspx

如何在D3D9中调试shader

 转载请注明:来自http://blog.csdn.net/skyman_2001

步骤如下:
(1)从DirectX SDK中安装shader调试器;
(2)在“DirectX Properties(DirectX 属性)”对话框中选择“Use Debug Version of Direct3D”和“Enable
Shader Debugger”单选框。(可通过“开始—>控制面板—>DirectX”打开该对话框,这两个单选框位于“Direct3D”标签页中);
(3)在程序中设置DeviceType为D3DDEVTYPE_REF(因为VS和PS只能在特定的设备上才能被调试,见表1)。并且在D3DXCreateEffectFromFile()函数中将参数Flags设为D3DXSHADER_DEBUG|D3DXSHADER_SKIPOPTIMIZATION。(D3DXSHADER_SKIPOPTIMIZATION——通知编译器不要执行任何代码优化。实践中,这个选项应该仅用于调试,因为这种情况下你不希望编译器以任何方式修改代码);
(4)在顶点shader或像素shader中设置一个断点;
(5)在Visual Studio .NET中选择“Debug—>Direct3D—>Start D3D”(Ctrl+Alt+F5)来运行应用程序;
(6)通过“Debug—>Window—>Disassembly”还可以看到汇编代码,而通过“Debug—>Direct3D—>RenderTargets”则可以看到渲染目标,通过“Debug—>Direct3D—>Textures”可以查看纹理贴图。
                                                         表1

关于调试shader的详情请参见MSDN的教程:
Getting Started Debugging Shaders (Direct3D 9)

HAL Device HAL Device REF Device REF Device
Shader SWVP HWVP or pure HWVP SWVP HWVP or pure HWVP
Vertex Shader Yes, with the debug runtime No Yes, with the debug runtime No
Pixel Shader No No Yes Yes
这年头什么都有,JS写的网络游戏~:【上一篇】
OpenSG节点核心:【下一篇】
【相关文章】
  • 分享2本CG实时渲染书籍: ShaderX3 与 Physically Based Rendering : From Theory to Implementation 连接已...
  • ShaderSimpler(5) : Bump Mapping(Normal mapping)
  • ShaderSimpler(6) : Parallax Mapping
  • 在Pixel Shader 3.0中使用动态流控制(Dynamic Flow Control)
  • ShaderSimpler(4) : 环境映射
  • ShaderSimpler(3) : 卡通渲染
  • Shader编程最容易犯的低级错误
  • Shaderey――非真实渲染
  • ShaderSimpler(1) : 实现基本光照
  • ShaderSimpler(2) : Phong shading
  • 【随机文章】
  • 如何监视剪贴板
  • "红帽"开源力作:Fedora Core 4
  • SQL Server的一些小技巧
  • 全新的多媒体播放平台RealOne Player
  • about struct
  • 本周之三个具有现实意义的梦
  • Struts、JBoss SEAM 、ZK和Visual Basic
  • [密码]启用Syskey时系统对注册表的处理
  • QQ密码本地破解原理和方法
  • 用于POTS多媒体的H_324标准
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.