Показать сообщение отдельно
Старый 28.10.2008, 21:16   #4
Jareny
Штурмовик-бомбардировщик
 
Аватар для Jareny
 
Регистрация: 09.09.2007
Адрес: Russia
Сообщений: 815
По умолчанию Хуки

Сегодня расскажу о хуках, или, как раньше они были мной обозваны, слотах.
Хуки в игре используются для взаимодействия модели с игрой. Как и коллизии. Если коллизии являются сигнализаторами столкновений моделей в игре, то хуки - активный элемент модели. Они показывают игре опорные точки модели. Клипы (предположительно точки приложения сил на самолёт), оружейные точки, показывающие места подвески оружия, точки эффектов, показывающие, откуда будет из самолёта вырываться пламя, вытекать бензин, масло, идти дым, где расположены огни навигации и посадочной фары, откуда выпрыгивает покидающий самолёт экипаж (для каждого члена экипажа свой хук. Не удивляйтесь, если вы видите только двух человечков в модели, а выпрыгивает их с десяток, значит они прятались под сиденьями и в бомболюках ).
Хуки располагаются в двух разделах, которые идут сразу после раздела [Materials]. Их имена должны быть уникальны для всей модели самолёта (и не только в самолётах они есть), содержаться должны только в неповреждённой версии меша.
Раздел [Hooks] содержит в столбик названия хуков, а раздел [HookLoc] содержит координаты соответствующих хуков в меше. Формат координат аналогичен формату координат в файле hier.him причём в тех же единицах. Чтобы найти место, где хотите сделать хук, вставьте в модель какой-нибудь произвольный меш, сделайте его дочерним от вашей модели и подбором строки аттачинг найдите нужные координаты. эти координаты можно смело вставлять в меш как координаты хука. Для этого удобно использовать какие-нибудь малокалиберные ракеты (например от истрибителя Me-262).

Вот пример из файла CF_D0 из Ju-52/3mg3e, скачать который можно в соседней ветке.

[Hooks]
_Clip05 <BASE>
_Clip06 <BASE>
_Clip07 <BASE>
_Clip19 <BASE>
_ExternalBail01 <BASE>
_ExternalBail02 <BASE>
_ExternalBail03 <BASE>
_ExternalBail04 <BASE>
_ExternalBail05 <BASE>
_BombSpawn01 <BASE>
_BombSpawn02 <BASE>
_BombSpawn03 <BASE>
_BombSpawn04 <BASE>
_BombSpawn05 <BASE>
_BombSpawn06 <BASE>
_BombSpawn07 <BASE>

[HookLoc]
1 0 0 0 1 0 0 0 1 -0.34878 -5.92075 1.27904
1 0 0 0 1 0 0 0 1 -0.35691 0.42588 -1.35164
1 0 0 0 1 0 0 0 1 0.32583 -5.29475 -1.41001
1 0 0 0 1 0 0 0 1 0.44558 -0.8685 1.40019
0.939692 0.342021 0 -0.342021 0.939692 0 0 0 1 1.15525 0.54403 -0.10978
0.939692 0.342021 0 -0.342021 0.939692 0 0 0 1 1.20843 0.60399 -0.10978
0.939692 0.342021 0 -0.342021 0.939692 0 0 0 1 1.16462 0.67878 -0.10978
0.939692 0.342021 0 -0.342021 0.939692 0 0 0 1 1.22525 0.76839 -0.10978
0.939692 0.342021 0 -0.342021 0.939692 0 0 0 1 1.17397 0.38064 -0.10978
0 1 0 -1 0 0 0 0 1 1.17397 0.38064 -0.10978
0 0 1 0 1 0 -1 0 0 0 -4.8 0
0 0 1 0 1 0 -1 0 0 0 0 0
0 0 1 0 1 0 -1 0 0 -0.4 -4.8 0
0 0 1 0 1 0 -1 0 0 0 -0.5 0
0 0 1 0 1 0 -1 0 0 -0.4 -4.3 0
0 0 1 0 1 0 -1 0 0 0 -4.3 0
__________________
Если что-то очень хочется, то можно. Возможно по-другому
Если что-то не получается, то одно из трех:
1. Тебе это не нужно
2. Плохо стараешься
3. Делаешь это не так.

Захожу ему в хвост, стрелки ещё не стреляют... пошли ракеты! Бабах! Ракеты, бабах! Осталось шестеро... нет ракет, есть вражеские истрибители. Так, один без крыла, другой без хвоста. Впрочем, как и я... Круто летать с навороченным самодельным джоем...
Jareny вне форума   Ответить с цитированием