曲面细分技术解析
曲面细分这项技术最先应用在专业领域,而首次被引入到PC图形技术中来的则是AMD公司,当年所发布的R600架构中新增加的Tessellation(曲面细分)由于专属性太强,也缺乏像微软以及游戏厂商的支持,所以该技术推出时并未得到游戏开发商的广泛使用。而首次让微软尝到曲面细分技术甜头的是:AMD为微软打造的XBOX360图形核心采用了这项技术,且大量游戏都采用了曲面细分技术。正是得到了微软老大的认可,曲面细分这项技术才在日后的DX11中大展拳脚。
R600架构中首次增加曲面细分单元
DX11流水线图
曲面细分的作用,通俗的来讲:就是为一个一个多边形模型增加更多的多边形数量。但是这样还不能保证能够提升图形的效果,从DX11流水线图我们可以清楚的看到:在曲面细分(Tessellator)单元的前后多出了Hull Shader和Domain Shader两个单元,正是借助这2个前后控制模块,才使得采用了曲面细分技术的图形效果有了较为显著的提升。
DX11中的曲面细分技术
从上面这张技术解析图,我们可以很了解到Hull Shader、Tessellator、Domain Shader这3个新单元的具体作用:Hull Shader主要负责定义细分等级(LOD)和相关控制点在细分中的“形变”趋势,需要说明的是这种形变仅仅是类似于曲率改变等小幅度的变化,而非大幅度的多边形位移;Tessellator则负责根据Hull Shader传输下来的信息,通过“暴力”增加多边形去实现Hull Shader的要求;Domain Shader负责的最重要的功能就是通过贴图控制的方式,实现模型的形变,也就是我们大家在DX11的细分曲面中看到的高细节画面。
显卡帝总结:Hull Shader定义细分级别和形变趋势;Tessellator按照Hull Shader需求增加多边形;Domain Shader实现模型形变。
曲面细分技术演示
曲面细分技术演示
曲面细分技术演示
然而有趣的是,作为曲面细分“创始人”的AMD并没有将曲面细分这项技术发扬光大,这从AMD和NVIDIA两家公司在新一代DX11显卡的核心架构上就可以看出端倪。NVIDIA对曲面细分技术的态度似乎很狂热,所以在核心架构上采用的是专用的曲面细分单元,而AMD则认为曲面细分技术的滥用是没有必要的,所以AMD依然沿袭的是R600架构的传统做法,即内部集成曲面细分处理单元。所以在高负载的曲面细分处理过程中,NVIDIA显卡的表现要比AMD的显卡更加出色一些,几乎可以到达6倍于竞争对手的处理能力。
显卡帝总结:NVIDIA的DX11显卡采用的是专用曲面细分处理单元的设计,而AMD则采用的是内部集成曲面细分处理单元的设计。
三秦IT网的官方微信:更多资讯请关注:三秦IT网官方微博