热点推荐
ZOL首页 > 显卡 > 评测 > 1000元以上 >

打开真实世界的大门

GPU大百科全书第三章:像素处理那点事儿

CBSi中国·ZOL 作者:中关村在线 顾杰 责任编辑:林光楠 【原创】 2011年07月23日 05:00 评论
在本页阅读全文(共12页)

  ● 打开真实世界的大门

  Pixel Shader1.0让图形界从固定的条条框框中跳了出来,但它存在精度不足的问题。Pixel Shader2.0弥补了精度方面的缺失,那它就完美了么?显然不。尽管Pixel Shader2.0能够提供足够让画面达到人眼分辨上限的精度,但它却存在不比精度不足好到哪里去的问题——它太过笨拙了。


GPU百科全书第三章 像素处理的那点事儿

3Dmark03的nature场景已经足够美丽了

  3D图形不同于静态画面,连续动态画面的流畅度和画面的准确表现是同等重要的,如果硬件仅仅能输出准确的效果,却无法在输出速度上予以保证,用户获得的最终体现效果一样会大打折扣。随着Pixel Shader的逐步发展,其最大指令长度慢慢的从出现之初的16条发展到了2.0b的512条,这使得指令的执行效率成了摆在人们面前的现实问题。非常遗憾的是,Pixel Shader发展到2.0b为止都没有引入真正有效的提升指令执行效率的手段,跳转、分支、流控制等今天看来很平常的东西在当时全都是不存在或仅仅存在于“支持”这种程度的,这让Pixel Shader的执行效率出现了极大的问题。

GPU百科全书第三章 像素处理的那点事儿
3Dmark03的Pixel Shader2.0测试场景

  与此同时,由于最大指令数本身的限制,程序员对每个像素所能够进行的改变实际上仍然会受到限制。如果想要添加更多更真实的效果,程序员往往需要让一个像素多次反复进入Pixel Shader单元中进行处理,这让本来就已经存在的效率问题变得更加雪上加霜。

  好不容易能够表达正确的结果了,效率却跟不上,程序员们都觉得很不舒服。程序员不舒服,大商人的收入就会受到影响。于是注意到问题所在的微软推出了号称史上最完美的DirectX版本——DirectX 9.0C。

GPU百科全书第三章 像素处理的那点事儿

  在DirectX 9.0C中,MS显然想将之前版本的DirectX中所遗留的问题一次性彻底搞定,Shader Modle3.0的最大指令数提升至65535,增加了寄存器数量,引入了动态程序流控制,将分支和跳转能力彻底开放给了程序员,同时通过多目标渲染(MRT)和延迟渲染(Deferred Shading)等创造性的技术保证了光栅化过程中整个流水线的整体效率,可以说DirectX 9.0C几乎解决了ALU利用率和效率之外的一切问题,它成了历史上第一个真正能够“实现一切特效”的图形API。

GPU百科全书第三章 像素处理的那点事儿
支持Shader Modle3.0特性的X-ray引擎画面

  得益于微软英明的指挥和领导,支持Shader Modle3.0的图形构架拥有了远比之前构架更多的寄存器资源、接近无限长度的指令执行能力以及灵活的控制操作方式,因此也就具备了远比之前构架更高的执行效率。程序员们获得了比先前所有版本都多得多的自由度,他们终于可以在支持Shader Modle3.0的硬件中近乎于不受约束的尽情堆砌指令,来实现越来越接近于现实的色彩和效果了。

上一页 1 ...3 4 5 6 7 ...12 下一页
频道热词:华硕主板  Intel  AMD  
视觉焦点
AMD Radeon HD 6850
  • 商家报价:
  • 厂商品牌:AMD
  • ZOL评分:0
  • 网友口碑:0
  • 查看详细>>
显卡评测热点
排行 文章标题