$fresnelrangestexture

From Valve Developer Community
Revision as of 22:24, 29 September 2020 by MineClever (talk | contribs) (Control Fresnel Term)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

fresnelrangestexture 是由几张 1d贴图合并而来的2d 贴图来控制 blinn-phong 高光(specular)与背光(rimlight)的菲涅尔效应(Fresnel term) 该贴图的V坐标对应WarpIndex,如果存在$masks1的alpha通道,则可以通过alpha控制WarpIndex来选取不同的菲涅尔映射, 该贴图的U坐标对应对Fresnel数值的映射关系(Fresnel的强度对应U的坐标数值)

当存在 $fresnelrangestexture 时 $phongfresnelranges 无效,菲涅尔(Fresnel)会强制使用 归一化的 VdotN 作为恒定的采样值以映射fresnelrangestexture

fresnelrangestexture由rgb三个通道构成 通道R:无作用 通道G:采样后,重新映射VdotN,获得最终blinn-phong 高光(specular)的Fresnel遮罩 通道B:采样后,与$masks1的RimMask(R通道)相乘获得 AmbientReflection(与环境相关的rimlight)的 Fresnel遮罩