导航:ZOL首页 > 显卡频道 > 评测 > NVIDIA显卡 | ![]() |
显示器是通过RGB颜色系统来进行图像还原的,平时我们喜欢用16bit、24bit等来表示颜色的精度,这里简单的进行一下介绍。在计算机中使用一定长度的数字来表示一定的颜色,比如16bit色深,就是用每种颜色用5bit表示,在32bit色深中每种颜色用8bit表示,颜色数越多,我们可以得到更加逼真的效果,不过对于计算机来说需要处理的数据也就越多。
颜色越多,过渡越平滑
溢出问题
现在的32bit色彩精度在日常应用还经常的遇到一些问题,比如溢出(overflow)或者下溢(underflow),而在人们追求电影版渲染的效果的道路上32bit色彩精度显然也是不够的,因此我们需要更高精度的数据,包括色彩数据。
可以看到更高色彩精度使得图像更加逼真
由于数据的精度不够高,所以本来应该波光粼粼的水面上有了很多条纹,为了避免这种情况,程序员需要利用有限的指令来控制水波波长、尺寸和速度。
其实需要高精度的场合不仅仅是这些,比如帧缓存后处理(Frame Buffer Post-Processing)和Photoshop样效果(mosaic、motion blur、embossing effects)也是需要高精度计算的。高精度的图像也需要高精度的伽玛矫正,从而生成更加平滑的效果。
图像/色调映射的动态范围
人眼对于快速的从亮到黑或者从黑到亮的转换具有快速的适应能力,但是大部分的图形芯片却没有这样的能力,因为动态范围非常的有限,常常会产生不尽如人意的结果。比如一个场景中有两个亮度值为0.6的光源,开发人员需要对其进行平均,但是0.6+0.6的结果等于1,而实际上亮度值的范围为0-1(溢出),因此得到的结果只能是0.5,显然这样同实际的情况有了很大差别。
GeForce FX中应用了FP16和FP32精度,得以解决了溢出问题,开发者在伽玛矫正方面具有更大的发挥空间。此外,GeForce FX还把原来应用在DC等领域的(S,R,G,B)伽玛矫正引入到了3D场景的创建中,使得开发者可以分别独立的对于像素的R、G、B和alpha通道进行矫正:
过黑的图像
正常对比图像
过亮图像
每像素反射组件(Per-Pixel Specular Components)
在3D对象的高光部分需要应用到Per-Pixel Specular Component,如果要产生细腻的高光高精度计算是必要的。
车头的白色园点是精度不够所致
GeForce FX利用高精度的计算
Shadow Buffers
在3D游戏中会频繁的使用Shadow buffers,简单的说就是首先在光源的视角对于场景进行计算并且渲染,然后从摄像机角度进行渲染,然后对于这两个结果进行比较,如果物体在某个影子的后面,那么影子就显示出来。这是一项极具效率的技术,但是也受到了精度的限制,如下图所示:
Shadow sorting: 如果精度不够,那么shadows可能会不能正确排序。FP16和FP32使得现在的硬件shadows更快、更精确。使用更高的精度可以使得避免上图所示的人物皮肤上的不该出现的纹理出现。
Single point sources: 以前由于精度的限制,shadows和对象靠近摄像机的时候,shadow buffer无法进行有效的处理,FP16和FP32帮助解决了这个问题。
nVidia还宣称GeForce FX具有的高精度处理能力也能使得原来的DX7.0和DX8.0游戏的画面有了一个新的提高,可见高精度处理对于未来显卡和应用是非常重要的。
我要评评 | 买笔记本,台式机 拨打800-858-2399,为您量身打造! | |
相关文章 |