Chapter6 Unity中的基础光照——Shader入门精要学习笔记

一、光照基础

1.光源

  • 在光学里用辐照度 irradiance 来量化光
    • 对于平行光来说,irradiance 可以通过计算在垂直于 l(光照方向)的单位面积上单位时间内穿过的能量
    • 对于倾斜的来说,可以使用光源方向 l 和 表面法线 n 之间的夹角余弦值来得到(l · n)
      在这里插入图片描述

2.吸收和散射

  • 光线射出后会与物体相交,相交的两种结果——吸收和散射
    • 散射
      • 只改变光线方向,不改变颜色和密度
      • 一种是散射到物体内部——折射 refraction
      • 一种是散射到外部——反射 reflection
    • 吸收
      • 只改变光线颜色和密度,不改变方向
        在这里插入图片描述
  • 高光反射 specular 表示物体表面如何反射光线
  • 漫反射 diffuse 表示有多少光线会被吸收、折射和散射出表面
  • 对于出射光线的数量和方向,我们用出射度 exitance来描述

3.着色

  • 根据材质属性(漫反射属性等)、光源信息(光照方向、辐照度等),使用一个等式计算沿某个观察方向的出射度的过程
  • 这个等式也成为光照模型

4.BRDF光照模型

  • 解决:当光线从某一方向照射到表面时,有多少光线被反射?反射方向有哪些?
  • 当给定入射光线的方向和辐照度后,BRDF可以给出在某个出射方向的光照能量分布
  • 是经验模型,对真实场景理想化和简化后的模型

二、标准光照模型

  • 只关心直接光照(物体表面一次反射直接进入摄像机的光线)
  • 各项同性
  • 把进入摄像机内的光线分为四个部分,分别计算其贡献
    • 自发光 emissive:描述给定一个方向时,物体表面本身会向该方向发射多少辐射量
    • 高光反射 specular:描述表面会在完全镜面反射方向散射多少辐能量
    • 漫反射 diffuse:描述表面会向每个方向散射多少辐能量
    • 环境光 ambient:描述所有间接光照

1.环境光 Ambient

  • 模拟间接光照:光线会在多个物体之间进行反射,最后进入摄像机
  • 在标准光照模型中,是全局变量 c a m b i e n t c_{ambient} cambient = g a m b i e n t g_{ambient} gambient

2.自发光 Emissive

  • 光线可以从光源之间进入相机,不需要反射
  • 计算时直接使用该材质的自发光颜色 c e m i s s i v e c_{emissive} cemissive = m e m i s s i v e m_{emissive} memissive
  • 在实时渲染中,自发光的表面并不会照亮周围的表面(并不会被当成光源)

3.漫反射 Diffuse

  • 可以认为在任何反射方向上的分布都是一致的,入射光线的角度很重要
  • 符合 兰伯特定律 Lambert’s Law
    • 反射光线的强度与表面法线和光源方向之间的夹角成余弦值成正比
      c d i f f u s e c_{diffuse} cdiffuse = ( c l i g h t c_{light} clight · m d i f f u s e m_{diffuse} mdiffuse) max(0, n · I)
    • n为表面法线,I 为指向光源的单位矢量, m d i f f u s e m_{diffuse} mdiffuse 是材质的漫反射颜色, c l i g h t c_{light} clight 为光源颜色
    • max(0, n · I) 是防止法线和光源方向点乘的结果为负值,截取到0,防止被从后面来的光源照亮

4.高光反射 Specular

  • 是一种经验模型,用于计算沿着完全镜面反射方向被反射的光线
  • 需要知道 表面法线、视角方向、光源方向、反射方向(可以通过其他三个算出来)
    • r = 2( n ^ \hat{n} n^ · I) n ^ \hat{n} n^ - I

Phong模型

  • c s p e c u l a r c_{specular} cspecular = ( c l i g h t c_{light} clight · m s p e c u l a r m_{specular} mspecular) max(0, v ^ \hat{v} v^ · r ) σ )^{σ} )σ
    • σ 为材质光泽度,控制高光区域的亮点有多宽,σ越大,亮点越小
    • m s p e c u l a r m_{specular} mspecular 为材质的高光反射颜色,控制强度和颜色
    • c l i g h t c_{light} clight 是光源的强度和颜色
      在这里插入图片描述

Blinn-Phong模型

  • 引入半程向量 h,为视角方向和光线方向的平均值
    • 比较 hn 的夹角,而不是 rv 的,方便计算
    • 在这里插入图片描述
    • c s p e c u l a r c_{specular} cspecular
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值