3d 光线追踪阴影 阴影 贴图区别
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/22 07:43:59
3d 光线追踪阴影 阴影 贴图区别
3d 光线追踪阴影 阴影 贴图区别
3d 光线追踪阴影 阴影 贴图区别
光线跟踪(ray tracing)(也叫raytracing或者光束投射法)是一个在二维(2D)屏幕上呈现三维(3D)图像的方法.一个光线跟踪程序数学地确定和复制从一幅图像的光线的路线,但是方向相反(从眼睛返回原点).光线跟踪现在被广泛用于计算机游戏和动画,电视和DVD制作,电影产品中.许多厂商提供用于个人电脑的光线跟踪程序.在光线跟踪中,每一个光线的路径由多重直线组成,几乎总是包含从原点到场景的反射,折射和阴影效应.在动画中,每一束光线的直线部分的位置和方向总是在不断变化,因此每一条光线都要用一个数学方程式来表示,定义光线的空间路径为时间的函数.根据光线在到达屏幕前经过的场景中的目标的色素或颜色来分配给每一束光线一种颜色.屏幕上的每一个像素符合每一时刻可以回溯到源头的的每条光线.光线跟踪最先是由一个叫数学应用组的组织中的科学家在20世纪60年代发明的.这些科学家中的一些人变得对光线跟踪作为一种艺术感兴趣,成为绘画艺术家,并建立了一个动画摄影工作室,使用光线跟踪为电视和电影制作3D电脑肖像和动画
我的理解光线追踪是一种缩水版的全局光照算法 他只从人眼出发 按照人眼能看见的路径 计算每一束光线的效应 包括折射反射 吸收等等
按照目前的硬件水平 实现高分辨率下的实时光线追踪还有困难 nvida最新的GTX480显卡只能做到一些静态场景的实时演算 而且FPS很低 基本是静帧
由于硬件的制约 游戏里很多都是用事先烘焙好的光照和阴影贴图来模拟光照效果
也有一些高级引擎比如cryengine3能高效模拟全局光照的效果 并且实现了一些类似缩水版的光线追踪 比如SSAO 3S次表面散射等 这些算法从局部上模拟了光线追踪的效果 其实效果也是满不错的