DirectX 10是什么及其特性介绍

2019-01-17 18:56:27于海丽

  统一渲染架构

  DirectX 10最大的革新就是统一渲染架构(Unified Shader Architecture)。目前各类图形硬件和API均采用分离渲染架构,即顶点渲染和像素渲染各自独立进行,前者的任务是构建出含三维坐标信息的多边形顶点,后者则是将这些顶点从三维转换为二维,这样便可以通过视觉欺骗在屏幕上显示出“三维”的场景。与此对应,GPU中也有专门的顶点渲染单元和像素渲染单元来分别执行这两项工作(由于工作量不同,这两种渲染单元的数量不相等,顶点渲染单元通常只有像素渲染单元的1/3~1/2)。在过去几年中,这种分离式设计对计算机图形领域的发展做出了一定的贡献。

  不过,微软认为这种分离渲染架构不够灵活,不同的GPU,其像素渲染单元和顶点渲染单元的比例不一样,软件开发人员在编写代码时必须考虑这个比例,这就大大限制了开发人员自由发挥的空间。另外,不同的图形游戏或软件对像素渲染和顶点渲染的需求不一样,导致GPU的运算资源得不到充分利用。为此,微软在DirectX 10中提出了统一渲染架构的思想:在相同物理类型的渲染单元上执行不同类型的渲染程序。换句话说,只用一种渲染单元,让它既能完成顶点渲染,也能完成像素渲染,甚至还能实现几何渲染。这样一来,渲染单元可以得到最大程度的利用,减少了资源闲置的情形。目前,Xbox 360的显示芯片Xenos就采用了统一渲染架构,该芯片一共有48个渲染单元,它们可全部用于顶点渲染或像素渲染,没有固定分配比例。此外,ATI也打算在新一代的R600芯片中采用统一渲染架构。

  当然,统一渲染架构也并非完美无瑕。相对顶点渲染来说,像素渲染将面临大规模使用纹理所带来的材质延迟,这是统一渲染架构急待解决的问题。不过有一点可以肯定,在微软的大力推动下,统一渲染架构是大势所趋。

相关文章 大家在看