在本页阅读全文(共3页)
下面是D3D 9和D3D 10的渲染管线流程图,相比老版本,D3D 10去掉了以前版本DX的设备能力检查CAPS,为DX10和Windows Vista提供的显示硬件必须满足DX10的所有硬件特性。这样对于开发者就比较可以放心的使用各种硬件特性了,很类似游戏机平台。
从架构图上我们可以清晰的了解到D3D 10在结构上的重大变化,不再针对具体的渲染状态,而是全部采用“Stage”状态对象。D3D10对渲染状态这个概念进行淡化,一方面使用全Shader化的架构使得状态的前后设置和互相影响对渲染成功率降低到最少;另外对API架构也更为简洁,面对一些关键渲染状态进行封装和分类。
Input Assembler Stage类似D3D9里的顶点声明,也就是对用户输入数据进行整合和系统化,随后进入顶点Shader。我们可以看见随后增加的“Geometry Shader”,原来的VS和PS只是对逐个顶点或像素进行处理,而新的Geometry Shader可以对每个顶点或像素的临近顶点设置Shader,也就是可以对批量几何进行处理。
流输出层(Stream Output State),这个层的功能是将VS和GS处理完成的数据输出给用户,由用户进行处理后再反馈给流水线继续处理。Rasterizer Stage是光栅化对象,控制光栅器的行为,包括填充模式、剔除模式、多采样、DepthBias等。最后便是Pixel Shader和输出。
本文导航
- 第1页:专门对应Vista操作系统
- 第2页:渲染模式公布,结构变化很大