借助曲面细分技术,我们可以极大地改善游戏画质。解决的办法虽然有了,但GPU的性能却没有跟上脚步。这是因为进行大量曲面细分的计算会极大耗费GPU几何性能,而过去业界一直强调GPU的阴影、贴图能力,忽略了几何性能,只设计了一个前端控制电路模块用于几何性能的计算。如今,NVIDIA和AMD都意识到了这个问题,在DirectX 11产品上都针对几何计算进行了优化,但二者的思路和实现方法却大不一样。
在NVIDIA方面,它认为成熟的GT200架构已经无法适应大规模的几何计算,因此对支持DirectX 11的GF100图形架构进行了全新设计,哪怕产品推出时间较晚也在所不惜。而专门用于几何计算的Raster Engine和PolyMorph Engine就是GF100架构上的关键和创新设计。Raster Engine分散在四个GPC内,PolyMorph Engine则分散在每组SM里面,这种层层递进的并行架构设计的几何性能计算效率更佳。在AMD方面,它强调抢先发布DirectX 11产品,从而快速占领市场。它的DirectX 11产品的架构是在成熟的RV770架构基础上,通过相对简单的核心堆积、添加DirectX 11指令的方式而成。它有一个用于几何计算的前端控制模块,拥有用于几何计算的运算单元(Tessellator(镶嵌器)+Vertex Assembler(顶点装配器)+Geometry Assembler(几何装配器)+Rasterizer×2+Hierarchial-Z×2,Rasterizer+Hierarchial-Z对应GF100的Raster Engine,Tessellator+Vertex Assembler+Geometry Assembler对应GF100的PolyMorph Engine)。我们可以将Cypress的图形架构中的Rasterizer(光栅器)和Hierarchial-Z(多级Z缓冲模块)看成是GF100中的Raster Engine;将Cypress的图形架构中的Vertex Assembler(顶点装配器)、Geometry Assembler(几何装配器)和Tessellator(镶嵌器)看成是GF100中PolyMorph Engine,对应顶点拾取、曲面细分、观察口转换、属性设置和流式输出,它们的功能类似。
从用于几何计算的几何单元数量来看,NVIDIA的GF100远超过AMD的Cypress。GF100拥有四个Raster Engine,Cypress实现类似功能的单元只有两个(Rasterizer+Hierarchial-Z)×2,比例为4∶2。GF100拥有16个PolyMorph Engine,而Cypress实现类似功能的单元只有一个(Tessellator+Vertex Assembler+Geometry Assembler),比例为16∶1。单从图形架构和专用于几何计算单元的数量来看,GF100的几何计算性能将大大超过Cypress。