GAMES101 Lecture 07 Shading 1 (Illumination, Shading and Graphic Pipeline)

Lecture 07 Shading 1 (Illumination, Shading and Graphic Pipeline)

Illumination & Shading

Shading 着色在图形学上的定义:

在图形学上,对不同物体,应用不同材质的过程(不同的材质与光线的作用有不同方法)

Shading Model 着色模型

所有的计算都是在世界坐标系下完成的

Blinn-Phong Reflectance Model

这是一个简单的经验模型,并不是完全符合物理的

  • Ambient lighting 环境光
  • Diffuse reflection 漫反射
  • Specular highlights 高光

  • \(n\)法线
  • \(v\)观察方向
  • \(l\) 光线方向
  • \(Surface\ parameters\)表面参数
    • \(shininess\)表示有多亮,不是亮度,而是反光度
    • \(color\) 颜色

\(n、v、l\)表示方向,所以是单位向量

获得方法为光源位置或摄像机减去shading point位置并归一化处理

着色不会产生阴影

Diffuse Reflection 漫反射

接收到光线多少能量,与角度有关

  • Lambert's cosine law

给定一个Shading Point,就能计算出它接收到多少光

光线传播距离越长,对于任意一个点上,能接受到的能量越少

于是可以计算出有多少光传播到了当前Shading Point

结合前面有多少光会被吸收,就能得到diffuse的表示方法

\[L_d=k_d(I/r^2)max(0,n\cdot l)\\ L_d为diffuse接收到的能量\\ k_d为漫反射系数(rgb颜色值)\\ I/r^2为到达shading\ point的能量\\ max(0,n\cdot l)为被shading\ point接收的能量\\ 取max的原因为,若点乘结果为负数,代表光线从背面照射过来,无物理意义 \]

补充:

以下补充来自于计算机图形学(OPENGL):光源

这里只考虑了真空中光因为距离衰减的强度,而现实中光在介质中传播,往往不是线性衰减

\[F_{att}=\frac{1.0}{K_c+K_1*d+K_q*d^2}\\ K_c是常数项,K_1是线性项系数,K_q是二次项系数 \]

  • 常数项永远置为1来确保公式的分母不会大于1即衰减系数不会大于1。

  • 线性项让衰减呈线性变化。

  • 二次项让衰减在距离较短时影响小于线性项,在距离较远时影响高于线性项。

    公式的衰减大致分布

漫反射项只考虑了\(n和l\),没有考虑\(v\),是因为漫反射朝着四面八方反射,与视线方向没有关系

光源在左上角,法线和光源方向点乘越接*1,漫反射越亮

并且可以看到\(k_d\)从小到大的变化

Specular Term 镜面高光

高光接*镜面反射方向,当视线方向接*

\[在Blinn-Phong模型中,判断法线方向是否接*角*分线方向\\ 半程向量h=bisector(v,l)\\ =\frac{v+l}{\lVert v+l\rVert}\\ \uparrow由*行四边形法则,角*分线为两边向量相加并归一化\\ L_s=k_s(I/r^2)max(0,\cos\alpha)^p\\ =k_s(I/r^2)max(0,n\cdot h)^p\\ \alpha为法线与光线方向与视线方向夹角角*分线的夹角\\ k_s为高光系数,表示高光颜色,通常认为是白的\\ L_s为最终得到的镜面反射光 \]

  • Blinn-Phong模型为经验模型,没有计算镜面高光被物体吸收了多少

  • 在Phong模型中,使用\(镜面反射方向r\)\(视线方向v\)的点乘计算是否接*,Blinn-Phong模型是一个改进,因为半程向量比反射方向更好算

  • 指数\(p\)是减少容忍度,在Blinn-Phong模型中一半为\(100\)\(200\)

Ambient Term 环境光

  • 我们认为环境光为一个固定的颜色
  • 这是*似的,若要精确计算,需要用到全局光照(GI)

\(L_\alpha=k_\alpha I_\alpha\)

若一个点凹下去一点,在Blinn-Phong模型中不会更暗,所以这是一个简化模型

Blinn-Phong Reflection Model

将环境光、漫反射和镜面高光加起来

在Blinn-Phong模型中,没有考虑光线到摄像机的能量损失

posted @ 2024-03-24 11:55  Telluluu  阅读(30)  评论(0)    收藏  举报