Extra FX 自发光
自 v0.1.79 起,启用 Extra FX 后,车辆和赛道都可以设置自发光网格向周围几何体投射实际光照。几乎所有着色器都支持,甚至是蒙皮网格:
语法
[EXTRA_FX_EMISSIVE_...]
MESHES = … ; 网格列表
MATERIALS = … ; 材质列表
DIGITAL_INSTRUMENTS = ? ; 数字仪表过滤器(对于大多数,是
; "digital_instruments.ini" 中各节的名称),仅适用于车辆
RANGE = 0.1 ; 范围,单位:米(默认车辆为 0.08,赛道为 5)
COLOR = 1 ; 可选亮度乘数(可以是 RGBA 值)
DIRECTED = … ; 设为 0 为点光源,1 为方向光,或
; 介于两者之间的值(默认根据网格形状猜测)
; 车辆可选优化标志:
INTERIOR_ONLY = 1 ; 仅在内部视角显示
EXTERIOR_ONLY = 0 ; 仅在外部视角显示
; 更复杂情况的可选高级调整
EMISSIVE_TWEAK = 1 ; 自发光颜色的额外色调映射以平衡效果
; (设为 0 禁用,设为 1 以上进一步减少大自发光值的效果)
MIP_BIAS = 0 ; 纹理的 MIP 偏移(增加可获得更平滑的光照)
IGNORE_TEXTURE_COLOR = 0 ; 设为 1 仅使用 COLOR 和自发光颜色
; 可选分布设置(可能影响性能):
COVERAGE = 3 ; 采样密度,默认车辆为 3,赛道为 2(实际
; 采样数量由网格面积、光照范围和覆盖率控制)
SAMPLES_LIMIT = 100 ; 采样数量上限,确保生成不会
; 花费大量时间,默认赛道为 400
SPLIT_ELEMENTS = 0 ; 在生成采样前将网格拆分为元素,
; 默认赛道为 1
SPLIT_THRESHOLD = … ; 设为大于 0 的值以在该距离内焊接顶点
; 后再拆分元素
NORMAL_SHIFT = 0 ; 增加以沿法线将光照产生采样移离表面
; (如果周围太暗则使用)
COVERED_BY = … ; 当具有给定名称的网格可见时停止自发光重要说明
对于几乎所有情况,简单的
[EXTRA_FX_EMISSIVE_...] MESHES = …就可以了,但某些选项可以帮助处理更复杂的情况。该效果应该与多通道自发光、刹车盘、发光网格良好配合(默认情况下gt3_exhaust_glow.ini已在可用时切换为使用发光自发光)。如果你有一个模拟发光自发光的光源,请添加
DISABLE_WITH_EMISSIVE_LIGHT = 1,使其仅在 Extra FX 发光自发光效果禁用时工作,避免双重发光。你可以将此效果附加到后视镜上,但目前请不要这样做,这部分将在下次 CSP 更新时自动猜测。
在网格上分布发光采样可能需要一些时间,但每个网格只发生一次,然后结果会被缓存在
assettocorsa/cache中。在赛道上工作时,不要将效果用于照亮大部分屏幕的大型灯光,而是考虑将其用于夜晚发光的窗户或彩色广告牌。当相机被此类灯光覆盖时,可能会出现一些视觉故障,性能也可能变差。以下是在 Spa 上的一些可能用例:示例 1、示例 2。
如果你正在设置车辆 LED 的发光效果,可能会遇到 LED 互相覆盖的问题(例如 488 GT3 的情况)。使用
COVERED_BY = …(如COVERED_BY = RPM_LED_LIMITER_1)在被覆盖时停止底层 LED 向周围发光。要让车灯网格在车灯内部投射光照,你可以使用
[EXTRA_FX] MASK_GBUFFER = headlight_glass_mesh_name将其表面设置为遮罩 G-buffer 而不阻塞它(应该能让 SSLR 工作)。更多详情请参阅 Extra FX 标志。
引用来源
- CSP 官方 Wiki 原文 — 内容来源
- acc-extension-config 仓库 — CSP 官方配置文件