[Unity Shader] 【游戏开发】Unity基础光照1-光照模型原理
在计算机图形学中,渲染是一个复杂的过程,包含了两个主要部分:决定一个像素的可见性和计算该像素的光照。其中,光照模型是渲染过程中的核心部分,它模拟了真实世界中的光与物体表面的交互,帮助生成最终的图像。在Unity等游戏引擎中,理解光照模型的原理是创建真实感视觉效果的基础。
1. 光照模型的物理基础
模拟真实的光照环境,需要考虑几个物理现象。简单来说,光线从光源发出,经过场景中的物体交互,最终到达摄像机,形成图像。要全面模拟这些交互,我们需要理解光的传播、散射、吸收等特性。
光照过程的核心物理现象可以总结为以下几步:
- 光源发出光线。
- 光线与物体表面相交,部分光线被吸收,部分光线被散射。
- 摄像机接收光线,最终形成图像。
2. 辐照度与表面法线
为了量化光照,光学中通常使用**辐照度(Irradiance)**这一概念。辐照度表示单位面积上单位时间内穿过的能量。对于平行光源(例如阳光),辐照度可以通过计算光线穿过一个垂直于光线方向的平面单位面积的能量来得到。
然而,在实际情况中,物体表面通常并不