车辆 – 技巧和提示
汉化标题:车辆 – 技巧和提示
原文标题:Cars – Tips and tricks
汉化更新时间:2026-01-14 13:17:17 +0800
英文原文最新更新时间:2019-12-13 18:54:25 +0300
以下内容可以帮助您为自定义着色器补丁设置车辆,或者仅仅是制作新车辆时的一般性建议。就像我旧博客中那些旧帖子的延续。😃
通用技巧
根据 PBR 公式,
ksFresnelEXP的最佳值为 5,并且可以将ksFresnelMaxLevel计算为min(1, ksFresnelC * 50)(来源,第 78 页)。不确定这是否在所有地方都适用,但对于某些材质如塑料、玻璃或镀铬,我建议使用这些值。如果您知道某些网格不会在背景上渲染(例如一些不会凸出的头灯玻璃),最好不要为这些网格使用
IsTransparent标志,而是通过调整优先级将其移动到最后,这样可以节省一些 FPS 并改善整体外观(此外,如果您有多层叠加,这样会更容易正确设置)。即使您没有设置损坏或污垢,也要使用
ksPerPixelMultiMap_damage_dirt着色器作为车身漆(只需用透明纹理填充那些插槽)。总的来说,我建议保持与 Kunos 的做法相似。
自定义着色器补丁
始终确保有正确的
COCKPIT_HR节点:补丁一直在使用它来区分内部和外部,以猜测灯光的作用、应用内部遮罩、调整后视镜中的反射等。使用
DOUBLE_FACE_SHADOW_BIASED让表面从两面投射阴影:ini[SHADER_REPLACEMENT_...] MESHES = tailight_SUB0, taillight_emissiveA, taillight_emissive, body, body_top, boot_cover,\ material:needle_body, bouton_dashboard DOUBLE_FACE_SHADOW_BIASED = 1也有一个
DOUBLE_FACE_SHADOW选项,但DOUBLE_FACE_SHADOW_BIASED会自动添加一些偏置以减少自阴影。不过,不要过度使用此选项,因为它可能会增加绘制阴影所需的时间(绘制两个面)。这段代码会将 SSLR 反射的锐度提高 80%:
ini[SHADER_REPLACEMENT_...] MATERIALS = EXT_Lights_base PROP_0 = extExtraSharpLocalReflections, 0.8对于一些没有锐利反射的镀铬零件,这可以使它们看起来不那么奇怪,但可以从锐利的局部反射中受益。
在使用
SHADER_REPLACEMENT部分时,如果可能,最好引用材质而不是网格。如果您在其中更改材质属性或纹理,将为每个网格创建新材质。