全局照明
全局照明(Global Illumination,GI)又称全局光照,是一种3D计算机图形渲染模式。现实世界中,直射光到达物体表面,根据物体表面材质颜色的不同,光会不同程度地从一个曲面反射和折射到另一个曲面。
全局照明渲染就是模拟自然光线如何从表面反弹到其他表面(间接光照),而不是仅仅局限于从光源直接照射到表面的光(直接光照),即:
采用全局照明渲染场景中相关联的光照,渲染效果会更加真实,但设定的反弹次数越高,渲染越复杂,耗时越长。
光线追踪
光线追踪(Ray Tracing)是实现全局照明的一种方式,其基于光路可逆原理,通过模拟从视点出发的光线经过显示屏幕进入场景中,与最近的物体相交,并且得到物体表面材质、纹理等信息,通过交点向反射、折射方向继续追踪,直至追踪到光源或设定的最大递归深度,再结合光源信息计算出光照效果。
由于光线追踪与现实光路的相似性,使其能够渲染出逼真画面,但该过程极其耗费资源,需要足够算力支撑,主要应用于图像质量要求较高的行业:电影、电视和广告等。
光栅化
光栅化(Rasterization)是三维计算机图形的另一种渲染方法,其使用多边形(通常为三角形)创建3D对象,再映射到二维平面进行纹理和阴影处理,是将一个图元转变为一个二维图像的过程。
利用三角形片元划分三维图形,根据三角形所在平面法线与光源方向的关系,获得光照参数。逐像素判断与三角形的关系,完成光照、纹理、颜色值的渲染。
光栅化渲染将复杂的场景内容分割成多个以像素为基本单位的独立计算单元,充分利用GPU的并行计算能力,进而实现快速渲染。
光栅化作为游戏渲染引擎的基本框架,在实际项目制作中具有快速、高效的优势,且运算方式简单稳定,通常应用在对实时交互要求较高的游戏等场景。但光栅化对各场景光照独立计算,场景间无相互光照联系,反光和阴影效果都需要人工制作,因此对复杂光照场景的渲染效果不够理想,逼真度不及光线追踪技术。
光线追踪与光栅化渲染对比 | ||
---|---|---|
对比项 | 光线追踪 | 光栅化 |
算法核心原理 | 模拟光路 | 三维图像映射至二维平面 |
渲染效果 | 光照效果丰富,全局照明效果好 | 复杂光照渲染效果不佳,侧重三维图形本身立体效果渲染 |
算法复杂度 | 算法复杂,多用于离线渲染 | 以像素为单元,运算速度快 |
应用场景 | 电影、电视和广告等高图像质量需求领域 | 游戏等快速交互领域 |
近年来,特别是游戏领域,已开始综合使用光栅化与光线追踪两种渲染模式,以充分发挥二者技术优势。采用光栅化进行大面积渲染,以控制数据量;采用光线追踪针对局部区域开展精细渲染,以提高渲染效果。
本文转自:电影科技动态,转载此文目的在于传递更多信息,版权归原作者所有。如不支持转载,请联系小编demi@eetrend.com删除。