哈喽,上次我们有分享过Diffuse漫反射的基本光照原理,现在我们来聊一下另外一个反射,Unity中specular镜面高光反射解析。
在OpenGL中,光照使用的是简化的模型,即对现实的情况进行近似,这样处理起来会容易一些而且看起来效果也差不多。而这些光照模型都是基于我们对光的物理特性的理解。
要处理光照模型,我们有常见的三种多边形的着色方法,分别是Flat Shading,Gouraud Shading和Phong Shading。三种效果图如下:

1、Flat Shading
Flat shading是最简单的着色模型,打光时每个多边形只会呈现一个颜色,这个颜色由面法向量和光照计算得来。

在该模型中,每个多边形中只有多边形的面存在法向量,而其各个顶点没有。所以早期的flat shading计算是按照面为单位来进行计算的,计算结果并不很准确。
2、Gouraud Shading
Gouraud shading着色器模型,多边形的每个顶点都有一个法向量,它在着色时对每个法向量进行点乘反射计算,再通过双线性插值计算三角形区域中其它像素的颜色(比如中间像素的颜色)。

3、Phong Shading
Phong shading是三者之中最复杂的着色方法。它的特点是结合了多边形物体表面反射光的亮度,并以特定位置的表面法线作为像素参考值,以插值方式来估计其他位置像素的色值。在这种情况下,多边形中每个顶点都有一个法向量,通过这些法向量与光照计算,来得到每个点的颜色。在使用有限数量的多边形时,对顶点法向量进行插值可以给出近似平滑的曲面效果,所以phong会计算更多的点乘反射,运行也比上面两种更加复杂。

相比之下,flat着色模型比较简单,但是后面两种计算方法虽然都需要应用多边形的法向量计算出其公共顶点的法向量,也都需要计算各顶点处的光强,但在逐像素计算上还是有所区别。
Phong shading在计算的时候会将插值以后的像素点对应的法向量再次与光照进行计算,得到其着色,而gouraud shading的计算只是对多边形的每个顶点计算好着色,然后再使用双线性插值方法对上面像素进行计算,不会再将其与光照进行反射计算。
4、Obj File计算
上述三种模型在计算的时候法向量是从哪里来的呢,我们打开一个简单的obj格式的box文件如下;
V(Geometric vertices),表示物体中各个顶点的信息;

Vt(Texture vertices),表示贴图坐标点;

Vn(Vertex normals),顶点法线;

F(Face),所有顶点组成的面的信息

而这些数据中没有面法线的值,所以flat shading在计算光照的过程中,需要单独根据点法线对面法线进行计算。对GouraudShading 和 Phong Shading来说,就只需要取值然后一顿猛算就对了.
5、Specular高光反射
Phong shading的模型主要由三个分量组成:环境(Ambient),漫反射(Diffuse)和镜面或者高光反射(Specular),所以下面这张图中,前三个加起来就会得到最后一个的效果。

环境光照指的是即使在黑暗的情况下,环境中也仍然有一些光亮,所以物体几乎永远不会是完全黑暗的,所以我们用这个环境光照来给物体一些颜色。
而diffuse已经在上次分享过原理以及计算过程了,所以只需要加上我们这次探讨的specular就可以完成phong的实现。
Specular是模拟光泽物体上面出现的亮点,而镜面光照的颜色相比于物体的颜色会更倾向于光的颜色。
如果我们的物体是一面镜子,无论从哪个方向去看,都会看到镜面光照的最大值,真相如图:

对于specular,我们计算的是反射向量和视线方向的角度差,如果夹角越小,那么镜面光的影响就会越大。它的作用效果就是,当我们去看光被物体所反射的那个方向的时候,我们会看到一个高光。而具体在shader graph中的计算过程,我留着下一节来聊叭。
来源:Thepoly 公众号
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答为给新片造势,迪士尼这次豁出去了,拿出压箱底的一众经典IP,开启了梦幻联动朱迪和尼克奉命潜入偏远地带卧底调查 截至11月24日......
此前Q2问答环节,邹涛曾将《解限机》首发失利归结于“商业化保守”和“灰产猖獗”,导致预想设计与实际游玩效果偏差大,且表示该游戏......
2025 Google Play年度游戏颁奖:洞察移动游戏新趋势
玩家无需四处收集实体卡,轻点屏幕就能开启惊喜开包之旅,享受收集与对战乐趣库洛游戏的《鸣潮》斩获“最佳持续运营游戏”大奖,这不仅......
说明:文中所有的配图均来源于网络 在人们的常规认知里,游戏引擎领域的两大巨头似乎更倾向于在各自赛道上激烈竞争,然而,只要时间足......
在行政服务优化层面,办法提出压缩国产网络游戏审核周期,在朝阳、海淀等重点区将审批纳入综合窗口;完善版权服务机制,将游戏素材著作......
未毕业先就业、组团入职、扎堆拿offer...这种好事,再多来一打!
众所周知,火星有完善的就业推荐服务图为火星校园招聘会现场对火星同学们来说,金三银四、金九银十并不是找工作的唯一良机火星时代教育......
同学您好!