通过 Unity 实践渲染的基础知识:
1、渲染可视化空间
相信你已经知道 Meshes 是什么,也了解如何将它们放置到场景中,但是,渲染,究竟位置上的变换是如何实际执行的呢?Shader 又是怎么知道它该从哪个画面的哪个位置开始绘制的呢?
当然,我们可以依赖于 Unity 自带的 Transform 组件及 Shader 去处理这些事情,但是,如果你想要对物体的变换拥有控制权,那么理解它们背后的实现原理就是十分重要的!为了完全理解全部过程,创造一次自己的实现方式。
位移,动漫渲染,旋转及缩放 Mesh 通过控制**点的位置来实现,我们称其为空间变换。我们将整个空间可视化,以了解我们究竟在做些什么。我们可以创造一个由一群点构成的3D网格,这些构成网格的点可以是任一的 Prefab 对象。
呈现的视图是包括光和阴影的照片般真实的3D视图。 为了渲染视图,使用两种计算方法:全局照明和光线追i踪。
全局照明是一种刺激场景周围的光的许多反射的算法,通常会带来更柔软,更自然的阴影和反射。
全局照明过程的*i一部分涉及寻找那些对于引导光可见的元件表面并计算多少光被传递到每个元件。一些元件将接收比其他元件更多的光,这取决于它们的表面性质,并且不同的表面将反射不同量的光。然而,每个元件将吸收一些光,因此反射回场景的总量将小于由灯具发射的总量。
光线追i踪是一种直接照明算法,动画渲染,它跟踪来自相机的光线通过场景的路径,然后计算光线与场景中的对象相交时的反射,折射或吸收。
渲染过程从找到反映较多光的元件开始。元件被认为是一个二次光源,因此我们需要计算其光的多少被传递到场景中的其他元件。多个通道进行,云渲染设计公司,直到在场景中的光的量同较初由光装置发出的光比较是可以忽略不计的。当通过已经完成,这时,就可以开始渲染了。
材料属性定义了光如何从表面反射的方式。直射光和环境光的水平定义反射的光。直接光是由光装置发出的光。它有一个特定的颜色,强度和方向。环境光可以被认为是一个一般水平的光,在场景中无处不在。在一个场景中的每一个光都有助于一个场景中的整体环境光。