Half-Life и Adrenaline Gamer форум
http://aghl.ru/forum/

[TUT] Entity attaching (to unique model bone)
http://aghl.ru/forum/viewtopic.php?f=39&t=731
Страница 1 из 1

Автор:  Turanga_Leela [ 29 мар 2012, 17:17 ]
Заголовок сообщения:  [TUT] Entity attaching (to unique model bone)

Цитата:
1) Открываем модель к которой хотите приаттачить энтитю
2) Открываем вкладку "render"
3) Ставим галочки напротив: Attachments + Bones
4) Находим единственную красную точку - ориджин модели

Тут возникает не большая не стыковка, если к примеру взять привязку класса beam, то pev_body - будет отвечать за искажение луча, если же взять точечный обьект к примеру env_sprite, то pev_body - будет отвечать за определение точки привязки (об этом следующий пункт)

5) Находим желательную точку привязки - точки обозначены зеленым цветом
6) Начинаем считать вектора(оранжевые линии) связывающие синие точки от ориджина модели до точки привязки, на примере ниже 11-13(т.к. 3 точки привязки подряд) таких векторов (Player), на 2м примере (Turret) 2 вариации 1) Можно привязать к дулу пулемета 2) К его крыше
Вложение:
faq_2.jpg
faq_2.jpg [ 141.45 КБ | Просмотров: 1056 ]

7) Подставляем получившиеся значения в алгоритм
set_pev(ent, pev_aiment, target) // target - индекс энтити для аттача (стартовой)
set_pev(ent, pev_skin, target | (1 << X)) // Где Х - число векторов(смещений), можно получившееся значение (1 << X) перевести в hex, к примеру при 13 смещениях значение будет иметь вид - 0x2000

При аттаче точечного обьекта нужно задать верный body
set_pev(ent, pev_body, Y) // где Y - порядковый номер точки привязки (нумерация начинается с 1) относительно ориджина (у игрока последняя точка привязки при 13 векторах = 3)

И в заключении пример привязки спрайта к рукам игрока
 Код

PS
Во время тестинга точечного env_beam при попытке привязки к статичной энтите (на типо "monster_turret", при привязке к игроку глюков не обнаружилось) возникал стабильный глюк. Примерно в процентном соотношении - 50/50 спрайт не аттачился к модельке, причину пока установить не удалось. Менял мув тайп модельке, менял movetype ent - follow/noclip, пробывал создавать с задержкой и менять класс env_beam - info_target, но улучшений не наблюдалось ... :(

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/