Caution
UPD: 06.11.2024 в этот релиз добавлена более свежая версия движка, исправлена проблема #490
UPD2: 06.12.2024 в этот релиз добавлена более свежая тестовая версия движка c большими изменениями по оптимизации:
- Многопоточность (D3D11 Deferred Contexts для каскадов теней + асинхронные расчеты)
- Управление некоторыми новыми оптимизациями в консоли:
r_mt_sun - вкл/выкл многопоточные каскады теней (сильно влияет на FPS, теперь можно включать тени от травы и они не будут лагать)
r_mt_rain - вкл/выкл многопоточный дождь (сильно влияет на FPS при дожде)
r_mt_particles - вкл/выкл многопоточные партиклы (не сильно влияет на fps)
- Множество переделок в структуре рендера.
- !Для правильной работы рендера требуется обновлённый
external.ltx
(добавилась секция[shader_params_export]
). Без этого будут баги!
Системные требования повышены:
- GPU с поддержкой DirectX 11.2 и выше.
- Windows 8.1 и выше.
Warning
На данный момент идёт работа над глобальной переделкой рендера, поэтому из-за большого кол-ва изменений принято решение сделать промежуточный релиз приватной версии движка для тестирования без публикования исходного кода.
Что сделано на данный момент:
- Добавлена поддержка сглаживания с использованием технологии NVIDIA DLSS
- Добавлен патченый скрипт погодного менеджера под оригинальную погоду из ТЧ, чтобы на ней работал ветер и саншафты без правок самой погоды. Скриншот с этой версии движка + Wooden Addon:
- Добавлена поддержка блокировки клавиш из скриптов:
level.block_action(key_bindings.kTORCH)
level.unblock_action(key_bindings.kTORCH)
- Добавлены звуки включения / выключения для фонарика:
[device_torch]:identity_immunities
snd_turn_on = weapons\device_torch\snd_switch_on
snd_turn_off = weapons\device_torch\snd_switch_off
- Добавлена возможность привязать свет фонарика к камере:
[device_torch]:identity_immunities
; светить из камеры, а не из фонарика на голове актора
bind_to_camera = true
; смещение источников света фонарика
; эти параметры используется только при включенном bind_to_camera и только для актора с видом от первого лица.
camera_torch_offset = 0, 0.1, 0.2
camera_omni_offset = 0, 0.1, 0.4
; Минимальное расстояние до препятствия, когда свет фонарика начнёт смещаться назад, сохраняя это расстояние. Нужно что бы препятствие было равномерно освещено. Значение по умолчанию - 0.5
camera_min_target_dist = 0.5
- Поддержка звуков для
talk.xml
:
<action_sounds>
<snd_open>interface\inv_open2</snd_open>
<snd_close>interface\inv_open2</snd_close>
<snd_say>interface\inv_page2</snd_say>
</action_sounds>
- Поддержка звуков для
carbody_new.xml
:
<action_sounds>
<snd_open>interface\inv_open</snd_open>
<snd_close>interface\inv_close</snd_close>
<snd_properties>interface\inv_properties</snd_properties>
<snd_drop_item>interface\inv_drop</snd_drop_item>
<snd_detach_addon>interface\inv_detach_addon</snd_detach_addon>
<snd_item_use>interface\inv_slot</snd_item_use>
</action_sounds>
- Добавлена поддержка переключения языка консольной командой
g_language
. Можно добавить настройку в меню и переключать язык до загрузки уровня. Переключение действует только на тексты. Шрифты, звуки и тп - не меняются. Языки указываются тут:
[string_table]
language = rus, ukr, eng
- Расширение экспорта в скрипты:
local dir = device().cam_dir
local up, right = vector(), vector()
dir:generate_orthonormal_basis(up, right)
dir:generate_orthonormal_basis_normalized(up, right)
-- методы типа db.actor:move_to_belt будут возвращать результат, удалось ли переместить предмет, пример:
if not db.actor:move_to_belt(obj) then
for i = 0, db.actor:belt_count() - 1 do
local item = db.actor:item_on_belt( i )
db.actor:move_to_ruck(item)
db.actor:move_to_belt(obj)
return
end
end
- Запрет перезарядки во время бега теперь управляется консольной командой
g_lock_reload
- Добавлена плавная смена гранат
- Добавлены запреты некоторых действий когда актор что то делает с оружием в руках (перезарядка, доставание/убирание и тп)
- Запрещено выкидывать из рук квестовые предметы.