-
Notifications
You must be signed in to change notification settings - Fork 30
HUD: Анимации
ForserX edited this page May 21, 2024
·
3 revisions
Система основывается на полноценном отдельном слоте (данный способ решает много проблем с детекторами/скрытием оружия/etc), из-за чего создаётся базовый предмет слота: anim_fake
, который нужно засунуть в инвентарь актора (можно при спавне).
misc/anim_slot.ltx
[anim_fake]:identity_immunities
class = F_ANMITM
slot = 22
can_trade = false
can_take = true
cost = 0
inv_weight = 0
inv_name = "animfake"
inv_name_short = "animfake"
default_to_ruck = false
sprint_allowed = true
; hud sect
animation_slot = 2
control_inertion_factor = 1
hud_fov = 45
hud = anim_fake
; For Debug
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 11
inv_grid_y = 9
visual = dynamics\devices\dev_aptechka\dev_aptechka_low.ogf ; unused
; Hud attach
item_visual = dynamics\devices\dev_aptechka\dev_aptechka_low.ogf ; unused
attach_place_idx = 0
hands_position = 0, 0, 0
hands_orientation = 0, 0, 0
hands_position_16x9 = 0, 0, 0
hands_orientation_16x9 = 0, 0, 0
aim_hud_offset_pos = 0, 0, 0
aim_hud_offset_rot = 0, 0, 0
aim_hud_offset_pos_16x9 = 0, 0, 0
aim_hud_offset_rot_16x9 = 0, 0, 0
gl_hud_offset_pos = 0, 0, 0
gl_hud_offset_rot = 0, 0, 0
gl_hud_offset_pos_16x9 = 0, 0, 0
gl_hud_offset_rot_16x9 = 0, 0, 0
item_position = 0, 0, 0
item_orientation = 0, 0, 0
Из интересного тут только параметр hud_fov
, т.к. большая часть остальных переопределяется в секциях анимаций.
Секция строится следующим образом:
[my_hud_anim]
hands_position = -0.0055,-0.05, 0.32 ; Позиция рук
hands_orientation = -0.500000,1.000000,1.149999 ; Поворот рук
hands_position_16x9 = -0.0055,-0.05, 0.32 ; Позиция рук (16x9)
hands_orientation_16x9 = 2.349998,2.749999,2.849998 ; Поворот рук (16x9)
item_position = 0.000075,-0.004612,0.001283 ; Позиция предмета
item_orientation = 0.045015,1.047468,0.056850 ; Поворот предмета
item_visual = dynamics\weapons\wpn_eat\injectors\wpn_injector_big_antirad_hud.ogf ; Модель худ-анимации
anm_use = antirad_hands_eat_invtrans, antirad_wpn_eat ; Проигрываемая анимация (для предметов, не являющихся едой - можно указывать своё название)
attach_place_idx = 0
- Так же есть поддержка анимации использования предметов. Для этого достаточно содержимое секции выше перенести в секцию предмета
Если Вам нужно проиграть анимацию (кроме момента, с использование предмета), то можно вызвать луа функцию:
animslot::play("my_hud_anim", "anm_use")