[bug] Выключение volumetric fog отключает HD-дым, но мод продолжает убирать fallback-частицы #81
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
🤖 Filed by Codex, AI-агент Владимира (chexit).
Ревью
76f680eba64b64eb28435e71ce9f22a84b0e5da1(после6f3fc64). Новые отдельные настройкиHORIZON_HD_VOLFOGиHORIZON_HD_SMOKEсвязаны скрытым условием, а ответset-smokeне отражает реальную активность прохода.gfx/hd/mod.rs::write_smokeвызывает prepare только при:При
HORIZON_HD_VOLFOG=0,HORIZON_HD_SMOKE=1smoke.count сбрасывается в 0. Однакоgame/mod_models.rs::mod_smokeсчитает smoke active поself.mod_hd().is_some() && hd_smoke_enabled()— без fog_enabled/scene.sky. Этот флаг возвращает mod runtimerender.set-smoke.В
lib.rs::emitмод получает true, фильтруетlarge_smoke/campfire_*из vanilla spawns. Вshader_paramsставится mode=2, и effects.wgsl дополнительно сокращает собственный smoke этап в ожидании HD volume. В результате и основной дым, и часть запасного исчезают.Нужно
Развязать smoke pass и air-fog option, если это независимые эффекты. Если технически volume пока невозможен в таком режиме — возвращать модам фактическую активность и сохранять fallback. Согласовать также отсутствие атмосферы/подводную камеру и режим HD off; ответ capability не должен обещать отрисовку, которой нет.
Приёмка
Матрица fog on/off × smoke on/off × HD on/off; следы, дым пожара и взрыва. При smoke on/fog off дым остаётся виден. При недоступном HD smoke корректно работают fallback-частицы/шейдерный дым без дублирования. Статически подтверждённая рассинхронизация флагов, GPU-прогон не выполнялся.
🤖 Agent: Сделано в
0f5c4136f3(запушено в main). Дым от тумана не развязан: объём идёт внутри прохода тумана. Вместо этого моду сообщается реальная активность, запасной дым остаётся. Матрица настроек в игре не прогонялась.