【笔记】 关于D3DComplie函数
2012-11-25 10:39
106 查看
函数:
【函数:http://msdn.microsoft.com/zh-cn/library/windows/desktop/dd607324%28v=vs.85%29.aspx】
笔记:
1、D3DComplie可以编译各种型号的Shader,其编译的Shader覆盖Shader级别9_1(DX9.0)到11(DX11),以及D3DXEffects
2、如果在D3DComplie里面指定Shader等级为vs_3_0或者ps_3_0这样低于DX10版本的Shader时所编译出来的Shader只能在DX9 API上使用
3、
如果希望在DX10/DX11
API上只使用DX9等级特性(如vs_3_0),需要写成vs_4_0_level_9_3。否则,尽管编译能够成功,但是将无法使用
ID3D10Device.CreateVertexShader/ID3D10Device.CreatePixelShader创建对应的
Shader。会提示
CreateVertexShader: Encoded Vertex Shader size doesn't match specified size.
【特性等级:http://msdn.microsoft.com/zh-cn/library/windows/desktop/jj215820%28v=vs.85%29.aspx#direct3d_9.1__9.2__and_9.3_feature_levels】
4、调用D3DComplie的时候可以选择指定内存中的代码或者来自文件。但是对于从文件中读取代码可能存在一定问题,不推荐使用。
5、此外vs_4_0_level_9_3中VertexShader输出坐标时应使用SV_POSITION(使用POSITION会报错)。同时PixelShader要写成SV_TARGET(使用COLOR会报错)
【函数:http://msdn.microsoft.com/zh-cn/library/windows/desktop/dd607324%28v=vs.85%29.aspx】
笔记:
1、D3DComplie可以编译各种型号的Shader,其编译的Shader覆盖Shader级别9_1(DX9.0)到11(DX11),以及D3DXEffects
2、如果在D3DComplie里面指定Shader等级为vs_3_0或者ps_3_0这样低于DX10版本的Shader时所编译出来的Shader只能在DX9 API上使用
3、
如果希望在DX10/DX11
API上只使用DX9等级特性(如vs_3_0),需要写成vs_4_0_level_9_3。否则,尽管编译能够成功,但是将无法使用
ID3D10Device.CreateVertexShader/ID3D10Device.CreatePixelShader创建对应的
Shader。会提示
CreateVertexShader: Encoded Vertex Shader size doesn't match specified size.
【特性等级:http://msdn.microsoft.com/zh-cn/library/windows/desktop/jj215820%28v=vs.85%29.aspx#direct3d_9.1__9.2__and_9.3_feature_levels】
4、调用D3DComplie的时候可以选择指定内存中的代码或者来自文件。但是对于从文件中读取代码可能存在一定问题,不推荐使用。
5、此外vs_4_0_level_9_3中VertexShader输出坐标时应使用SV_POSITION(使用POSITION会报错)。同时PixelShader要写成SV_TARGET(使用COLOR会报错)
相关文章推荐
- 【笔记】关于require.js 的用法
- 关于网站的性能瓶颈——(阅读笔记)
- OpenCV学习笔记七——关于Mat类
- 关于IP纯真数据库(QQWry.dat)的使用 ----笔记
- android开发关于popupwindow显示关闭的笔记
- 关于&nbsp的一点笔记
- mfc笔记--摘录关于裁剪窗口区域的设置,WS_CLIPCHILDREN和WS_CLIPSIBLINGS的理解
- Python笔记1--关于序列的学习
- SilverLight学习笔记--关于使用IValueConvert对绑定数据的格式化操作
- 关于直播学习笔记-002-Red5 & Sewise Player & Wirecast
- IntelliJ IDEA 学习笔记 - 关于tab的一些设置
- linux关于tomcat的一些命令笔记
- 关于mysql安装与配置的笔记
- 深度学习笔记之关于总结、展望、参考文献和Deep Learning学习资源(五)
- 关于linux0.11文件系统高速缓冲的见解【《linux内核完全注释》阅读笔记】
- DirectShow SDK笔记【关于DirectShow(2)】
- 关于Quartz的一点笔记
- 【韩顺平jsp教程笔记一】MySql下关于分页时取出前几条记录方法(不同于SqlServer)
- 关于双主的一些说明【91洲际哥的笔记】
- 关于DLL的一点笔记