700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > openGL之API学习(一四七)实时渲染 光线追踪渲染和栅格化渲染

openGL之API学习(一四七)实时渲染 光线追踪渲染和栅格化渲染

时间:2019-12-27 03:04:05

相关推荐

openGL之API学习(一四七)实时渲染 光线追踪渲染和栅格化渲染

其实渲染方式有两种:光线追踪渲染和栅格化渲染。

1、栅格化渲染(rasterized rendering)

栅格化渲染是将三维向量场景渲染到二维位图上。它不是根据光传输的物理规律进行处理的,所以无法正确模拟许多复杂真实光照环境,只能达到足够欺骗人类眼睛的程度。

2、光线追踪渲染(ray-traced rendering)

来自光源的光线会在场景中反弹;它会计算出光线与盒子的交点,以及它应该反射多少光线,光线如何穿过虚拟相机的镜头,最后,决定相机的图像应该如何显示在你的屏幕上,结果非常逼真。

3、全局照明(Global Illumination),通常简称为“GI”。

主要流派:

Ray tracing 光线追踪

Path tracing 路径追踪

Photon mapping 光子映射

Point Based Global Illumination 基于点的全局光照

Radiosity 辐射度

Metropolis light transport 梅特波利斯光照传输

Spherical harmonic lighting 球谐光照

Ambient occlusion 环境光遮蔽

Voxel-based Global Illumination 基于体素的全局光照

Light Propagation Volumes Global Illumination

Deferred Radiance Transfer Global Illumination

Deep G-Buffer based Global Illumination

其中,光线追踪又分为递归式光线追踪、分布式光线追踪和蒙特卡洛光线追踪等;路径追踪又分为蒙特卡洛路径追踪、双向路径追踪、能量再分配路径追踪等。

4、辐射着色

辐射度算法(Radiosity)是一种全局光照算法,用于三维计算机图形学绘制。和倾向于只在一个表面上模拟一次光的反射的直接光照算法(例如光线跟踪)不同,像辐射度算法这样的全局光照算法模拟光在一个场景里的多次反射,通常会导致更柔和更自然的影子和反射。辐射度算法做为绘制方法是在1984年由康奈尔大学的研究人员(C. Goral, K. E. Torrance, D. P. Greenberg 和 B. Battaile)在他们的论文"Modeling the interaction of light between diffuse surfaces"(漫射表面之间的光线的交互的建模)中引入的。 该理论在工程中早有应用,用以解决辐射热传导中的问题,始于约1950年。突出的商用辐射度算法引擎包括Lightscape (现已集成到Autodesk 3D Studio Max的内部绘制引擎中),和更新的Next Limit的Maxwell~Renderer(麦克斯韦绘制器)。

栅格化渲染可更快创建 3D 图像,但会牺牲画面品质。适合用于电子游戏,因为游戏速度的重要性优于画质。Unreal 引擎是常见的栅格化渲染器。栅格化渲染对于那些可接受精减的模型或简化着色器的人来说是理想的;而模型复杂度与材质受限于游戏引擎。

光线追踪可以渲染精确的阴影、递归反射、折射和任何反射/反射光。光线追踪渲染需要大量的计算,更适合于质量比快速交互更重要的行业:电影、电视和广告的视觉特效,以及用于建筑可视化、设计和汽车的图像和动画。V-Ray 是一个广受欢迎的光线追踪渲染器。光线追踪对于那些着重于模型复杂度和写实材质的人来说是理想的,他们希望能够保持原来的几何形状;可根据所需使用任何尺度的几何体。

3、混合渲染

4、实时渲染(real-time rendering)

这不是一种渲染方式,实时渲染的目标是匹配显示器的刷新率,使视觉效果平顺——所以我们说的是 60 赫兹 = 60 帧每秒(帧/秒)的游戏和 VR。(24 或 30 帧每秒通常被称为“实时”,但技术上与电影和电视帧率有关。)

以往,“实时”一词只适用于游戏引擎,但随着快速光迹追踪技术的出现——比如 Chaos Group 的 Lavina 计划——Lavina 现在适用于任何能够快速而流畅地生成图像的东西。“实时,从技术上讲,只是渲染的速度是否可以达到特定目标,”Simeon 说。“现在,我认为超过每秒 30 帧就可称得上是实时。”

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。