实时渲染学习(八)游戏开发中基于图像的渲染技术总结

参考博文:【《Real-Time Rendering 3rd》 提炼总结】(九) 第十章 · 游戏开发中基于图像的渲染技术总结

前言

最近比较忙,所以好几天没更新。言归正传,本章内容主要是游戏开发中用到的技术,因为我本身游戏玩的比较少,所以产生的共鸣也不是很多,简要浏览了原文,本章内容就在原文基础上做简要总结吧。
本章知识概览:

  • 渲染谱 The Rendering Spectrum
  • 固定视角的渲染 Fixed-View Rendering
  • 天空盒 Skyboxes
  • 光场渲染 Light Field Rendering
  • 精灵与层 Sprites and Layers
  • 公告板 Billboarding
  • 粒子系统 Particle System
  • 替代物 Impostors
  • 公告板云 Billboard Clouds
  • 图像处理 Image Processing
  • 颜色校正 Color Correction
  • 色调映射 Tone Mapping
  • 镜头眩光和泛光 Lens Flare and Bloom
  • 景深 Depth of Field
  • 运动模糊 Motion Blur
  • 体渲染 Volume Rendering

一、渲染谱 The Rendering Spectrum

实时渲染学习(八)游戏开发中基于图像的渲染技术总结_第1张图片
渲染谱可以理解为渲染的金字塔,从左到右,由简单到复杂,由二维图像到几何模型,从外观特征到物理渲染。

二、固定视角的渲染 Fixed-View Rendering

将复杂的几何模型转换为可在多帧中重复使用的简单buffer来节省大量渲染时间和性能。
一个和静态场景相关的概念是黄金线程(Golden Thread)或自适应(Adaptive Refinement)渲染。其基本思想是,当视点与场景不运动时,随着时间的推移,计算机可以生成越来越好的图像,而场景中的物体看起来会更加真实。这种技术通常使用累积缓冲器(accumulation buffer)做抗锯齿(anti- aliasing),同时显示各种累积图像,或者放慢每像素离屏着色(如光线追踪,环境光遮蔽,辐射度)的速度,然后渐进改进之后的图像。

三、天空盒 Skyboxes

天空盒通常只包含诸如太阳,天空,远处静止不动的云和山脉之类的元素。环境贴图(environment map)可以代表本地空间入射光亮度。虽然环境贴图通常用于模拟反射,但也可以用来表示环绕环境的远处物体。立方体贴图(cubic maps)是最为常见的一种环境贴图。环境贴图放置在围绕着观察者的网格上,并且足够大以包含场景中所有的对象。且网格的形状并不重要,但通常是立方体贴图。

四、光场渲染 Light Field Rendering

所谓光场(Light Field),可以理解为空间中任意点发出的任意方向的光的集合。

而光场渲染(Light Field Rendering),可以理解为在不需要图像的深度信息或相关性的条件下,通过相机阵列或由一个相机按设计的路径移动,把场景拍摄下来作为输出图像集。对于任意给定的新视点,找出该视点邻近的几个采样点进行简单的重新采样和插值,就能得到该视点处的视图。

五、精灵与层 Sprites and Layers

最基本的基于图像的渲染的图元之一便是精灵(sprite),精灵(sprite)是在屏幕上移动的图像。对于简单的精灵,屏幕上会显示一个一对一的像素映射,存储在精灵中的每个像素将被放在屏幕上的像素中,可以通过显示一系列不同的精灵来生成动画。

六、公告板 Billboarding

我们将根据观察方向来确定多边形面朝方向的技术叫做公告板(Billboarding,也称为布告板),随着观察角度的变化,公告板多边形的方向也会根据需求随之改变。
如图所示,给定表面的法线向量n和近似向上方向的向量u,通过创建一组由三个相互垂直的向量,就可以确定公告板的方向。
实时渲染学习(八)游戏开发中基于图像的渲染技术总结_第2张图片

七、粒子系统

粒子系统(Particle System)是一组分散的微小物体集合,其中这些微小物体按照某种算法运动。粒子系统的实际运用包括模拟火焰,烟,爆炸,流水,树木,瀑布,泡沫,旋转星系和其他的一些自然现象。粒子系统并不是一种渲染形式,而是一种动画方法。

八、替代物 Impostors

作为一种公告板技术,替代物(Impostors)是通过从当前视点将一个复杂物绘制到一幅图像纹理上来创建的,其中的图像纹理用于映射到公告板上。替代物可以用于物体的一些实例上或者渲染过程的多帧上,从而使整体性能获得提升。

九、公告板云 Billboard Clouds

一个复杂的模型通常可以通过一系列的公告板集合相互交叉重叠进行表示。

十、图像处理 Image Processing

首先需要将场景渲染成2D纹理或者其他图像的形式,再进行图像处理。图像处理的过程,一般在像素着色器中进行,因为像素着色器中可以很好地将渲染过程和纹理结合起来,而且速度和性能都可以满足一般所需。

十一、颜色校正 Color Correction

色彩校正(Color correction)是使用一些规则来转化给定的现有图像的每像素颜色到其他颜色的一个过程。常用于模仿电影胶片的色调,颜色校正通常包括将单个像素的RGB值作为输入,并向其应用算法来生成一个新的RGB。颜色校正的另一个用途是加速视频解码,如YUV色彩空间到RGB色彩空间的转换。

十二、色调映射 Tone Mapping

计算机屏幕具有特定的亮度范围,而真实图像具有更巨大的亮度范围。色调映射(Tonemapping),也称为色调复制(tone reproduction),便是将宽范围的照明级别拟合到屏幕有限色域内的过程。

  • HDR,是High-Dynamic Range(高动态范围)的缩写,可以理解为一个CG的概念,常出现在计算机图形学与电影、摄影领域中。
  • HDRI是High-Dynamic Range Image的缩写,即HDR图像,高动态范围图像。

色调映射要解决的问题是进行大幅度的对比度衰减将场景亮度变换到可以显示的范围,同时要保持图像细节与颜色等表现原始场景的重要信息。

十三、镜头眩光和泛光 Lens Flare and Bloom

  • 镜头眩光(Lens flare)是由于眼睛的晶状体或者相机的透镜直接面对强光所产生的一种现象,由一圈光晕(halo)和纤毛状的光环(ciliary corona)组成。
  • 泛光(Bloom)效果,是由于眼睛晶状体和其他部分的散光而产生,在光源附近出现的一种辉光。

十四、景深 Depth of Field

景深(Depth of field,DOF),也叫焦点范围(focus range)或有效焦距范围(effective focus),是指场景中最近和最远的物体之间出现的可接受的清晰图像的距离。

十五、运动模糊 Motion Blur

在计算机绘制中产生运动模糊的方法大致分3种:
1、直接渲染模糊本身。通过在对象移动之前和之后添加几何体来完成,并通过次序无关的透明,避免Alpha混合。
2、基于累积缓冲区(accumulationbuffer),通过平均一系列图像来创建模糊。
3、基于速度缓冲器(velocity buffer)。目前这个方法最为主流。创建此缓冲区,需插入模型三角形中每个顶点的屏幕空间速度。通过将两个建模矩阵应用于模型来计算速度,一个用于最后一个帧,一个用于当前模型。顶点着色器程序计算位置的差异,并将该向量转换为相对的屏幕空间坐标。

十六、体渲染 Volume Rendering

体渲染(Volume Rendering),又称立体渲染,体绘制,是一种用于显示离散三维采样数据集的二维投影的技术。体渲染技术中的渲染数据一般用体素(Volumeric Pixel,或Voxel)来表示,每个体素表示一个规则空间体。
实时渲染学习(八)游戏开发中基于图像的渲染技术总结_第3张图片

你可能感兴趣的:(图形学)