正文内容 评论(0

从GPU诞生说起:AMD统一渲染架构回顾及展望
2011-06-28 17:40:18  出处:快科技 作者:朝晖 编辑:朝晖     评论(0)点击可以复制本篇文章的标题和链接
传统GPU顶点单元和像素单元的出现

上文我们提到了GPU的由来以及渲染过程,以及象征着初期GPU标识的T&L。GPU通过硬件T&L,实现大量的坐标和光影转换。随着更加复杂多变的图形效果的出现,顶点和像素运算的需求量大幅提升,此时的GPU架构也遇到了一些麻烦的问题。游戏画面的提高对GPU有了更高的要求,图形处理生成多边形的过程中需要加上许多附加运算,比如顶点上的纹理信息、散光和映射光源下的颜色表现等等,有了这些就可以实现更多的图形效果。

当然,与此同时带来的就是对GPU顶点和像素的计算能力极具考验。通过对GPU图形流水线的分析,工程师们发现与传统的硬件T&L相比,另一种方案具有更高的效率和灵活性,这就是Shader(渲染器/着色器)的出现。2001年微软发布的DirectX 8带出了Shader Model(渲染单元模式),Shader也由此诞生。

从GPU诞生说起:AMD统一渲染架构回顾及展望
DX8显卡体系结构及渲染流水线

本质上来说,Shader是一段能够针对3D图像进行操作并被GPU所执行的图形渲染指令集。通过这些指令集,开发人员就能获得大部分想要的3D图形效果。在一个3D场景中,一般包含多个Shader,这些Shader中有的负责对3D对象顶点进行处理,有的负责对3D对象的像素进行处理。所以最早版本的Shader Model 1.0中,根据操作对象的不同分别Vertex Shader(顶点着色器/顶点单元,VS)和Pixel Shader(像素着色器/像素单元,PS)。

相比T&L实现的固定的坐标和光影转换,VS和PS拥有更大的灵活性,使得GPU在硬件上实现了顶点和像素的可编程(虽然当时的可编程特性与现在相比很是孱弱),反映在图形特效上就是出现了动态的光影效果,游戏玩家们第一次见到了更加逼真波光粼粼的水面;而对于开发者来说,游戏的开发难度也大大降低了。从历史意义上来讲,Shader Model的出现对GPU来说是一场空前的革命,日后也成为DirectX API的一个重要部分。每逢DirectX版本升级,Shader Model的技术特性都会随之增强和扩充。

具体来说,VS的主要作用就是构建3D图形的骨架,也就是顶点。本质上,任何3D图形在计算机中只有两种存在形式,构建骨架的顶点以及连接顶点之间的直线。比如,我们划一个圆,计算机会把它当做多边形来处理;如果精度较低,可能是5边形和或6边形;如果精度较高,则会是500边形或600边形,也就是几百个顶点和几百个直线。

而PS的作用就更好理解了,主要负责VS之后的处理,比如图形表面的纹理以及像素值、颜色等等,使其达到预期的的效果。不过PS中根据各工种的不同细化分为像素渲染单元(Pixel Shader Unit,PSU)、纹理贴图单元(Texture Map Unit,TMU)以及光栅化单元(Raster Operations Pipe,ROP;A卡中叫做Render Back End,RBE)。PSU主要负责像素的处理工作,比如我们在游戏中见到的场景、光影效果等;TMU主要负责纹理处理工作,比如树木、石头的纹理以及水面反射等等;而ROP/RBE负责像素的最终输出工作,执行像素的读/写操作、Z-Buffer检查、色彩混合及抗锯齿等。

责任编辑:

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |
本文收录在
#快讯

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...