github OGSR/OGSR-Engine 3.501
3.500

7 hours ago
  • Теперь terrain parallax из SSS доступен в публичной версии OGSR Engine. Включение в меню или консольной командой r_terrain_parallax_enable.
    Для правильной его работы, особенно чтобы правильно работали лужи, нужна перенастройка террейна: прописать террейнам в shaders.ltx/xr текстуры из Anomaly+SSS, которые содержат правильные бампы под это. Пример:
[levels\aver_grass]
...
detail_name                      = detail\ground_grass_01
r2_r                             = detail\ground_grass_01
r2_g                             = detail\ground_asphalt_01
r2_b                             = detail\ground_earth_01
r2_a                             = detail\ground_mud_01

Пример shaders.ltx из Secret Trails: https://github.com/I-AmDead/Secret-Trails/blob/80bb606/gamedata/shaders.ltx#L897
Кроме этого, для каждой текстуры террейна нужно подобрать свой offset. На offset влияет bump текстуры. Offset'ы задаются консольной командой ssfx_terrain_offset (их может быть 4). Для каждой локации подбирается набор из 4 текстур террейна, а offset'ы переключаются скриптом при переходе на новую локацию. Пример: https://github.com/I-AmDead/Secret-Trails/blob/80bb606/gamedata/scripts/ogsr/ogsr_shaders_control.script#L17

--Примерно так это настроено в Secret Trails
local ssfx_parallax_setup = {
    ["l01_escape"]			= { -0.25, -0.15, -0.1,  0.0   },
    ["l02_garbage"]			= { -0.15, -0.05, -0.1,  0.1   },
    ["l03_agroprom"]			= { -0.2,  -0.05, -0.13, 0.1   },
    ["l04_darkvalley"]			= { -0.1,  -0.05, -0.15, 0.1   },
    ["l05_bar"]				= { -0.15, -0.1,  -0.13, 0.0   },
    ["l06_rostok"]			= { -0.07, -0.05, -0.07, 0.0   },
    ["l07_military"]			= { -0.1,  -0.1,  -0.1,  0.05  },
    ["l08_yantar"]			= { 0.1,   -0.1,  -0.45, 0.0   },
    ["l09_deadcity"]			= { -0.13, -0.15, -0.25, 0.15  },
    ["l10_radar"]			= { -0.2,  -0.05, -0.1,  0.0   },
    ["l10_red_forest"]			= { -0.15, -0.05, -0.15, 0.0   },
    ["l11_pripyat"]			= { 0.1,   -0.05, -0.1,  -0.05 },
    ["l12_stancia"]			= { -0.1,  -0.05, -0.05, 0.1   }, 
    ["l12_stancia_2"]			= { -0.05, 0.0,   0.0,   0.0   },
    ["l13_deep"]			= { -0.2,  -0.25, -0.2,  0.15  },
    ["swamp"]			        = { -0.15, -0.1,  -0.2,  0.0   },
}

local function terrain_offset()
    if (ssfx_parallax_setup[level.name()]) then
        local setup = ssfx_parallax_setup[level.name()]
        cmd("ssfx_terrain_offset " .. string.format("%f, %f, %f, %f", setup[1], setup[2], setup[3], setup[4]))
    else
        cmd("ssfx_terrain_offset 0, 0, 0, 0")
    end
end

Если задать offset неправильно, глубина намокания будет или недостаточной или слишком сильной.
Конечно наверное можно взять какие нибудь текстуры из паков под ТЧ/ЗП с нормальными бампами и под них всё это настроить, но мне кажется с этим ещё больше возьни будет, чем с готовыми из Anomaly+SSS.
В целом возьни с этими настройками много, но результат стоит того:
image
image
image

  • Добавлен новый объёмный свет - Peak Volumetric shader by @LVutner
    Оптимальные настройки для любых источников света: volumetric_intensity 0.2, volumetric_distance 1.
    Можно аномалиям, у которых включен idle_light, прописать в конфиги:
idle_light_volumetric_enable             = true
idle_light_volumetric_intensity          = 0.25
idle_light_volumetric_distance           = 1

По умолчанию выключил r2_exp_far_no_shadows, чтоб волюметрики не исчезали с расстоянием.

  • Добавлена консольная команда r2_volumetric_lights_blur для включения блюра от SSS для волюметриков

  • Управление шейдерными макросами USE_ACES, SSFX_SHADOWS, SSFX_SSS перенесено в движок, теперь их можно переключать из консоли: ssfx_use_aces, ssfx_shadows_enable, ssfx_sss_enable.

  • Поправлено мельтяшение намокания под деревьями во время дождя в некоторых случаях

  • Добавлены недостающие в публичной версии движка скриптовые экспорты для работы модного скриптового компаса https://github.com/I-AmDead/Secret-Trails/blob/main/gamedata/scripts/jr_compass.script

  • Добавлен инвентарный звук разрядки оружия snd_unload_wpn.

  • Добавлены новые звуки для болта и гранат: snd_draw, snd_holster, snd_throw_start, snd_throw, snd_throw_end

  • Добавлена более точная настройка позиции броска гранаты/болта из позиции худовой кости руки. Пример настройки:

[wpn_bolt]
throw_point_bone = r_hand
throw_point = 0, 0, 0  ;(offset from r_hand)

Старые параметры throw_point / dir - предварительно не забудьте удалить из конфигов!

  • Добавлен S2-стайл быстрый бросок болта по ЛКМ. Чтобы включить, надо прописать в конфиг болта quick_throw_use = true.
    Так же добавлены звуки и анимации для быстрого броска болта:
    snd_quick_throw_start, snd_quick_throw, snd_quick_throw_end
    anm_throw_quick_begin, anm_throw_quick, anm_throw_quick_end
    и поддержка отдельного quick_throw_point (по умолчанию равен throw_point) и quick_throw_point_bone (по умолчанию равен throw_point_bone, может пригодиться для бросков болта с разных рук или чего то подобного)

  • Удалено чтение из худовой секции болтов/гранат параметров throw_point / dir - они не юзаются и не юзались ранее. throw_dir в секции мировой модели тоже не использовался.

  • Добавлена консольная команда g_throw_dbg для визуальной отладки позиций броска болтов/гранат

  • Добавлен скриптовый каллбек on_actor_boltthrow на бросок болта

  • Поправлены проблемы с тенью от актора от 1 лица

  • Множество мелких улучшений и изменений. Full Changelog: 3.490...3.501

Don't miss a new OGSR-Engine release

NewReleases is sending notifications on new releases.