$lightwarptexture
< Zh
Jump to navigation
Jump to search
该技术首次应用于
胜利之日:起源的雪地地图,例如Kalt。
$lightwarptexture(DX9+ SM3)是一个用于着色器 VertexLitGeneric 的材质着色器参数,可在所有的
起源 游戏,自从
起源2006 以来中使用。 该参数根据texel的亮度进行染色,可视为局部化的色彩校正。
注意事项
$lightwarptexture必须在所有其他纹理之后指定,否则会覆盖其他纹理。$lightwarptexture需要$bumpmap。若未指定,将自动使用默认法线贴图!效果等同于在VMT中声明了$bumpmap!
- $detailblendmode 5-9失效 - 使用$phong时5和6仍有效
- $envmapmask仅在
Mapbase中有效 - $selfillum_envmapmask_alpha在所有分支中均无效
$lightwarptexture。光扭曲纹理
光扭曲纹理是一维像素条。暗部区域将应用左侧颜色染色,亮部则应用右侧颜色。50%灰度表示无染色。
$lightwarptexture在笔刷/位移面上会呈现无光扭曲效果,而相同纹理在未启用$phong的模型上会导致均匀光照(类似GoldSrc的平面着色模式)。VTF参数
光扭曲纹理应使用未压缩的BGR888格式以避免光照渐变中的色阶断层[1],并启用UV钳位。
使用
VTEX时,建议编译参数:
nocompress 1 // 禁用纹理压缩,防止色阶断层 nomip 1 // 禁用mipmap(低分辨率纹理无需生成) nolod 1 // 始终使用完整分辨率版本 clamps 1 // 防止极端光照值混合 clampt 1 // 可选? stripalphachannel 1 // 移除冗余的Alpha通道(如有)
示例

ground/snow_warp.vtf(
)
- 这是上文
胜利之日:起源截图中使用的光扭曲纹理,用于为暗部雪景添加微妙蓝调而不影响高光区域。 
models/player/pyro/pyro_lightwarp.vtf(
)
- 该纹理应用于所有
军团要塞2角色(不仅限Pyro),创造出红调阴影边界的高对比度卡通效果。 - 分阶处理(自定义)

- 此自定义纹理实现"线稿"风格。需将环境光设为0使未照明区域变黑,并控制视角相关阴影投射。
- 卡通着色(自定义)

- 通过锐利的光照阶梯替代平滑渐变,增强卡通质感。
$lightwarptexture还可用于增强对比度、调整顶点光照阴影过渡、柔化高光等。