图形学-小知识点收集

计算法线贴图中的RGB像素表示的法线方向

RGB 颜色值用于存储矢量的 X、Y、Z 方向,其中的 Z 为“向上”(与 Unity 通常使用 Y 作为“向上”的惯例相反)。此外,纹理中的值视为经过减半处理,即添加了 0.5 的系数。这样就能存储所有方向的矢量。因此,为了将 RGB 颜色转换为矢量方向,必须乘以 2,然后减去 1。例如,RGB 值 (0.5, 0.5, 1) 或十六进制的 #8080FF 将得到矢量 (0,0,1),这便是用于法线贴图的“向上”,并表示模型表面没有变化。这就是您在此页面前面的法线贴图“示例”的平面区域中看到的颜色。

//RGB=>法线方向
R*2-1=X
G*2-1=Y
Z*2-1=Z 
//法线方向=>RGB
(X+1)/2=R
(Y+1)/2=G
(Z+1)/2=B

链接:https://www.cnblogs.com/kingBook/p/11399792.html

RGB颜色提取灰度值

这里用一个比较常用的基于人眼感知的灰度值提取公式。

color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722

这个公式是由人眼对不同颜色敏感度不同得来的,这里无需过多计较,直接把提取出来的灰度值作为高度值即可。

链接:https://gameinstitute.qq.com/community/detail/128921

你可能感兴趣的:(图形学-小知识点收集)