13.2. 渲染场景的描述#
如前所述,渲染是对三维场景的二维呈现。这种呈现依赖于视角、光照、物体等多个要素。从专业层面上说,我们一般可以将渲染场景抽象为物体、材质、相机、光源这四个主要的组成部分,打开任意一款 3D 图形离线或实时引擎(包括但不限于 Unity 3D、Unreal Engine、Houdini、Maya、Blender 等),都可以发现它们的身影。
13.2.1. 物体#
在对渲染场景的描述中,物体(object)与几何(geometry)的概念往往是等价的。顾名思义,我们需要对物体几何的表达——一件东西长什么样子、朝什么方向、在什么位置。自然地,可以借助我们在 §9 中学到的几何表示方法,以及在整个第二部分里所了解的几何处理技术。
应当指出的是,出于实时渲染的需求和现有管线的限制(见 §14.1),基本所有面向实时需求的渲染器都是建立在三角网格的基础上的。考虑到与实时渲染在几何表达上的对齐,除特殊的体积性物体(如烟雾、火焰、云彩外),三角网格在离线渲染的几何表达中也占据了主流。