Zh/$lightwarptexture
< Zh
Jump to navigation
Jump to search

该技术首次应用于《反恐精英:起源》 的雪地图,例如Kalt。
$lightwarptexture
(DX9+ SM3)是一个用于着色器 VertexLitGeneric 的材质着色器 参数,可在所有的 起源 游戏,自从
起源2006 以来中使用。 它根据明暗程度调整纹素的颜色,可以看作是局部的颜色校正。
注意事项




- $detailblendmode 参数5-9将无法正常工作(除非使用 $phong 时的5 & 6)。
- $envmapmask 在非 2 引擎中无法正常工作。
- $selfillum_envmapmask_alpha 在任何分支中均无法正常工作。








光偏移纹理
光偏移纹理是一条一维像素带。暗纹素将被着色为左侧的颜色,亮纹素将被着色为右侧的颜色。50% 灰色表示无颜色偏移。

VTF 参数
光偏移纹理应使用未压缩的 BGR888 格式,以避免光照渐变中出现不必要的颜色条纹[1],并启用 UV 钳位。
如果使用 VTEX,请使用以下编译参数:
nocompress 1 // 禁用纹理压缩,防止颜色条纹 nomip 1 // 禁用 mipmaps,在此情况下不必要 nolod 1 // 始终使用该纹理的全分辨率版本(由于本身分辨率较低) clamps 1 // 防止在光照极端条件下颜色混合 clampt 1 // 可选? stripalphachannel 1 // 如果存在,移除不必要的 alpha 通道
示例
ground/snow_warp.vtf
()
- 这是上方 《反恐精英:起源》 屏幕截图中使用的光偏移纹理。它旨在为较暗的雪区域添加轻微的蓝色调,而不会影响较亮的区域。
models/player/pyro/pyro_lightwarp.vtf
()
- 适用于所有 《军团要塞2》 角色,不仅是 Pyro。这种纹理创建了红色终止线的高对比阴影,体现了游戏独特的插画风格。
- 色调分层(自定义):
- 这种自定义光偏移纹理创造了一种色调分层的“线稿”风格。然而,仅启用光偏移还不够:环境光必须设置为 0 以使未受光区域为黑色,世界光照必须具有视图依赖性以确保始终投射阴影。
- 卡通渲染(自定义):
- 卡通渲染通过用清晰的光照分界替代平滑的光照渐变,让对象看起来更加卡通化。
其他可能的 $lightwarptexture 用途包括增强对比度、调整顶点光照阴影转换、柔化高光等。
参考资料
- Lightwarp Fixes [Team Fortress 2] [Mods] 在 GameBanana 上