微软DirectX 10.1技术全方位剖析
3D世界的光照与渲染
在3D渲染当中,存在不同的光照方法,其中包括光照/阴影贴图、辐照度(Radiosity)和光线追踪等等。光线追踪的工作更适合CPU来完成,而光照/阴影贴图、辐照度以及其它渲染运算则适合在GPU上完成。
Part 1:光照/阴影贴图
简而言之,光照/阴影贴图的工作原理是将每个光源视角的图像都渲染成成1个或者多个纹理。然后在单个像素渲染过程当中,查找这些纹理来决定这个像素的光照强度和色彩;如果对某个光源来说这个像素不可见,那就进行阴影处理。完成上述操作之后,表面着色程序再来评估和混合所有的情况和条件,并且考虑像素的材质属性,决定最终的像素色彩。这种光照/阴影贴图的方法,适合渲染标准的漫射光照。但是处理反射式光照上,则先需要渲染独立的立方体贴图,否则光照/阴影贴图有限的分辨率无法满足反射光照和阴影在质量上的需求,也无能力处理大量点光源或者大量域光源存在的场景。光照/阴影贴图技术最致命的是无法处理间接光照。

光照/阴影贴图处理方式
Part 2:光线追踪渲染
光线追踪渲染技术则是从视角出发到场景当中每个像素都投射光线,然后由它来决定每束光线碰到物体的第一个触点;然后以此为依据,再在触点四周投射适合的光线,每个触点都有一个着色程序来决定触点上光线反射的强度和色彩。
这个过程可以多次重复来渲染出间接光照的效果,同时也广泛适用于处理光的反射、折射和阴影。但采用这种方式往往需要每秒投射数以亿计的光线,才能获得可观的实时帧数,与此同时还要复杂的数据架构来存储场景当中所有物体的位置数据。正因为如此,使用这种方法只适合渲染静态场景,而对于大数据量的动态场景来说,光线追踪渲染处于明显的劣势。

光线追踪渲染模式
实现光线追踪的代价是如此之大,现今的硬件都无力完成实时追踪,所以在大多数游戏中我们退而求其次—以“常数环境条件(Constant ambient term)”的方式来处理间接光照。换句话说,就是使用一种不考虑特定光源对整个场景光照影响的“统一光照”(Uniform Illumination),这种方式处理间接光照的方式非常粗糙,省略了对色彩进行混合以及阴影的处理。
主板
显卡
显示器
CPU
内存|存储
光存储
机箱|电源
键鼠|摄像
音频
笔记本
台式机
数码相机
手机
MP3|MP4
独具匠心 会说话的Tt炫彩风扇
8115国产版 双飞燕防水战警热卖
3G新品,金河田G7II音箱最新上市
英特儿45纳米迅驰移动高清芯世界
英特尔45纳米酷睿 高清"芯"视界
西部全覆盖 雷柏新品键鼠专题报道
影驰 GF9600GT中将限量版 Crysis
Lazeska 天空战记官方游戏壁纸
佐佐木希清纯秋季写真2
佐佐木希清纯秋季写真1
冒险岛Online官方游戏壁纸