<3nca
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Ну лан, для начала движек сурс поддерживает 15 слоев анимаций, но кс го работает на 13.
И так, я хотел узнать какой слой за что отвечает, но мне было лень разбирать кс, ибо мои глаза вылезут из орбит и по этому я почекал, что и как работает лишь в 1м файле, но этого хватило, чтобы иметь минимальное представление о том или ином слое. Если что-то не правильно или не полно, а я уверен, что так, ибо я чекал лишь по 1му файлу, то прошу дополнять.
Представляю вашему внимаю боль для ваших глаз:
Мемный вопрос: Какова члена анимация плентинга бомбы находится в евенте броска гранаты в DoAnimationEvent?
Я обожаю валв с их мемами)))
__________________________________________________________________________
With love f33nRy <3
И так, я хотел узнать какой слой за что отвечает, но мне было лень разбирать кс, ибо мои глаза вылезут из орбит и по этому я почекал, что и как работает лишь в 1м файле, но этого хватило, чтобы иметь минимальное представление о том или ином слое. Если что-то не правильно или не полно, а я уверен, что так, ибо я чекал лишь по 1му файлу, то прошу дополнять.
Представляю вашему внимаю боль для ваших глаз:
Код:
//https://github.com/perilouswithadollarsign/cstrike15_src/blob/29e4c1fda9698d5cebcdaf1a0de4b829fa149bf8/game/shared/cstrike15/csgo_playeranimstate.h#L23
enum animstate_layer_t
{
ANIMATION_LAYER_AIMMATRIX = 0, //ну это ебать аим матрица
ANIMATION_LAYER_WEAPON_ACTION, // в DoAnimationEvent() инициализируется. При броске гранат == ACT_CSGO_FIRE_PRIMARY, при PLAYERANIMEVENT_FIRE_GUN_PRIMARY_OPT == ACT_CSGO_FIRE_PRIMARY_OPT_1, при PLAYERANIMEVENT_FIRE_GUN_PRIMARY_OPT_SPECIAL1 == ACT_CSGO_FIRE_PRIMARY_OPT_2, при PLAYERANIMEVENT_FIRE_GUN_SECONDARY если снайперская винтовка == ACT_CSGO_FIRE_PRIMARY, для другого == ACT_CSGO_FIRE_SECONDARY, и тд.
ANIMATION_LAYER_WEAPON_ACTION_RECROUCH, // в SetUpWeaponAction() инициализируется. ПРИ m_nAnimstateModelVersion < 2: Если чел в приседании, но не сел, то weight лаера ставится ANIMATION_LAYER_WEAPON_ACTION.weight * duck_ammount. Если чел сел, то weight == 0. ПРИ m_nAnimstateModelVersion > 2: weight ставится из flTargetRecrouchWeight рассчитанной в функции. В ЛЮБОМ СЛУЧАЕ ЛАЕР СТАВИТСЯ ИЗ m_pPlayer->LookupSequence("recrouch_generic").
ANIMATION_LAYER_ADJUST, //в SetUpVelocity() инициализируется. На серверной части: если чел активно бежит, то парсится из ACT_CSGO_IDLE_TURN_BALANCEADJUST, а если чел в остановке то из ACT_CSGO_IDLE_ADJUST_STOPPEDMOVING. https://github.com/perilouswithadollarsign/cstrike15_src/blob/29e4c1fda9698d5cebcdaf1a0de4b829fa149bf8/game/shared/cstrike15/csgo_playeranimstate.cpp#L2301
ANIMATION_LAYER_MOVEMENT_JUMP_OR_FALL, //в DoAnimationEvent() и в SetUpMovement() инициализируется из ACT_CSGO_JUMP и означает, что прыжок определенно произошел. Ставится из ACT_CSGO_FALL, если человек не прыгает и не в прыжке. Его параметры ставятся в SetUpMovement(), на пример его вес на лестнице будет градиентом при прыжке или если ANIMATION_LAYER_MOVEMENT_LAND_OR_CLIMB, то будет 0, или фейдом при приземлении.
ANIMATION_LAYER_MOVEMENT_LAND_OR_CLIMB, //в SetUpMovement() инициализируется. Если человек на лестнице (на сервере если в текущий кадр, то из ACT_CSGO_CLIMB_LADDER), на клиенте собственно тоже ACT_CSGO_CLIMB_LADDER. Все ничего не знаю, это если чел на земле... xD
ANIMATION_LAYER_MOVEMENT_MOVE, //ну это короч всякие мувименты.
ANIMATION_LAYER_MOVEMENT_STRAFECHANGE, //в SetUpMovement() инициализируется. Обновляется когда m_pPlayer->LookupSequence("strafe") != -1, это при изменении стрейфа.
ANIMATION_LAYER_WHOLE_BODY, // в DoAnimationEvent() инициализируется. Нужна в кс для: анимаций дефьюза, плента бомбы (закоменчены зоны с байзоной и твичем) в функции SetUpWholeBodyAction(). Если ивент == PLAYERANIMEVENT_FIRE_GUN_PRIMARY ии это бомба, то ANIMATION_LAYER_WHOLE_BODY == ACT_CSGO_PLANT_BOMB.
ANIMATION_LAYER_FLASHED, //слой, когда игрок находится под флешкой.
ANIMATION_LAYER_FLINCH, //Инициализируется из m_pPlayer->LastHitGroup() == HITGROUP_HEAD) ? ACT_CSGO_FLINCH_HEAD : ACT_CSGO_FLINCH в SetUpFlinch(). Я так пологаю это дерганья игрока, когда в него попадают.
ANIMATION_LAYER_ALIVELOOP, //инициализируется из ACT_CSGO_ALIVE_LOOP(как минимум на сервере) в SetUpAliveloop(). Слой анимации, когда игрок меняет оружие.
ANIMATION_LAYER_LEAN, //инициализируется из m_pPlayer->LookupSequence("lean") в SetUpLean(). Слой опоры движения, на пример центр тяжести и тд.
ANIMATION_LAYER_COUNT, //просто максимальное кол-во слоев для кс го, он ставится для SetNumAnimOverlays() в Reset().
};
Я обожаю валв с их мемами)))
__________________________________________________________________________
With love f33nRy <3
Последнее редактирование: