openGL之API学习(一七九)材质Material原理
Posted hankern
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openGL之API学习(一七九)材质Material原理相关的知识,希望对你有一定的参考价值。
在光线照射到某个物体表面的时候,总体上会出现三种反应:吸收,反射以及折射。其中反射又分为漫反射和镜面反射。
而所谓的能量守恒法则说的则是,能量不可能凭空产生也不可能凭空消失,只可能发生转换。
用在光线传播过程中则可以得到这样一个公式:入射能量=吸收能量+反射能量+折射能量。其中,吸收的能量一般转换为热能,是我们不需要考虑的部分,将这一部分掠去,得到公式:入射能量>=反射能量+折射能量。其中,反射能量可以分为漫反射和镜面反射,而漫反射在我们cg制作过程中,一般为diffuse,而镜面反射一般为specular,而折射一般为refraction。令入射能量为100%,即为1,则可以得到最终我们可以使用的公式:1>=diffuse+specular+refraction。
所有反射都具有菲涅尔效应
菲涅尔就是你的视线和你看的面的夹角越垂直,则看到的反射越低;你的视线与你看的面的夹角越接近0度,反射越高。
下图右中,池塘远处的水面看上去像镜面一样,近处的水面则更透彻,这同样是由于菲涅耳效应——在不同视角观察下物体材质反射率不同。
考虑了菲涅尔效应的材质叫菲涅尔材质。
以上是关于openGL之API学习(一七九)材质Material原理的主要内容,如果未能解决你的问题,请参考以下文章
openGL之API学习(一七五)如何查看显卡支持了多少OpenGL扩展
openGL之API学习(一七零)glEnableClientState glDisableClientState
openGL之API学习(一七三)glsl如何设置版本和兼容性