Структура модели транспорта (SA) — различия между версиями
Материал из GTAModding.ru
DK22 (обсуждение | вклад) (→Boat) |
DK22 (обсуждение | вклад) (→Повреждение компонентов) |
||
Строка 209: | Строка 209: | ||
0 extra5 IS_NOT_IN_ARRAY, IS_EXTRA, 10 | 0 extra5 IS_NOT_IN_ARRAY, IS_EXTRA, 10 | ||
0 extra6 IS_NOT_IN_ARRAY, IS_EXTRA, 10 | 0 extra6 IS_NOT_IN_ARRAY, IS_EXTRA, 10 | ||
+ | =Повреждение компонентов= | ||
+ | Визуальное повреждение реализовано включением/отключением (флаг rpATOMICRENDER RpAtomic) целой/повреждённой версии компонента. Повреждаемый компонент заведомо содержит целую и повреждённую версии моделей. Они определяются наличием в имени суффиксов | ||
+ | _ok - целый компонент | ||
+ | _dam - повреждённый компонент | ||
+ | В иерархии это выглядит так: | ||
+ | node | ||
+ | | | ||
+ | +--node_ok | ||
+ | | | ||
+ | +--node_dam | ||
+ | При обработке иерархии модели, геометрия компонентов (RpAtomic) с суффиксами node_ok и node_dam переходит к компоненту node, а сами компоненты (RwFrame) удаляются. |
Версия 10:22, 30 сентября 2012
Содержание |
Классы транспорта
Всего имеем 11 классов, 2 из них в финальной версии игры не используются.
Vehicle | +--Automobile | | | +--Mtruck | +--Quad | +--Heli | +--Plane | +--Trailer | +--Boat | +--Train | +--FHeli | +--FPlane | +--Bike | +--BMX
Иерархия
Флаги
Бит | Имя | Описание |
---|---|---|
0 | IS_NOT_IN_ARRAY | Компонент не сохраняется в массиве используемых игрой компонентов |
1 | IS_DAMAGABLE | Компонент повреждается |
2 | IS_WHEEL | Скопировать геометрию главного колеса для этого компонента |
3 | IS_POS_DUMMY | Компонент определяет только позицию |
4 | IS_DOOR | Компонент - дверь |
5 | IS_LEFT_SIDE | Компонент справа |
6 | IS_RIGHT_SIDE | Компонент слева |
7 | IS_FRONT_SIDE | Компонент спереди |
8 | IS_REAR_SIDE | Компонент сзади |
9 | IS_EXTRA | Компонент - экстра |
10 | ||
11 | IS_WINDSCREEN | Компонент - лобовое стекло |
12 | ||
13 | IS_REAR_DOOR | Компонент - задняя дверь |
14 | IS_FRONT_DOOR | Компонент - передняя дверь |
15 | ||
16 | IS_MAIN_WHEEL | Копировать геометрию этого компонента для компонентов-колес |
17 | IS_UPGRADE | Компонент - апгрейд |
18 | ||
19 | ||
20 | IS_BOGGIE_FRONT | Копировать геометрию этого компонента для компонента задней пары колёс |
21 | IS_BOGGIE_REAR | Скопировать геометрию передней пары колёс для этого компонента |
22 |
Каждый класс транспорта имеет свой набор стандартных компонентов.
Automobile
Компоненты
№ Название Флаги 1 chassis - 2 wheel_rf_dummy IS_RIGHT_SIDE, IS_MAIN_WHEEL 3 wheel_rm_dummy IS_WHEEL, IS_RIGHT_SIDE 4 wheel_rb_dummy IS_WHEEL, IS_RIGHT_SIDE 5 wheel_lf_dumm IS_WHEEL, IS_LEFT_SIDE 6 wheel_lm_dummy IS_WHEEL, IS_LEFT_SIDE 7 wheel_lb_dummy IS_WHEEL, IS_LEFT_SIDE 8 door_rf_dummy IS_DAMAGABLE, IS_DOOR, IS_RIGHT_SIDE, 12, IS_FRONT_DOOR, 15 9 door_rr_dummy IS_DAMAGABLE, IS_DOOR, IS_RIGHT_SIDE, IS_REAR_SIDE, 12, IS_REAR_DOOR, 15 10 door_lf_dummy IS_DAMAGABLE, IS_DOOR, IS_LEFT_SIDE, 12, IS_FRONT_DOOR, 15 11 door_lr_dummy IS_DAMAGABLE, IS_DOOR, IS_LEFT_SIDE, IS_REAR_SIDE, 12, IS_REAR_DOOR, 15 12 bump_front_dummy IS_DAMAGABLE, IS_FRONT_SIDE 13 bump_rear_dummy IS_DAMAGABLE, IS_REAR_SIDE 14 wing_rf_dummy IS_DAMAGABLE 15 wing_lf_dummy IS_DAMAGABLE 16 bonnet_dummy IS_DAMAGABLE 17 boot_dummy IS_DAMAGABLE, IS_REAR_SIDE, 15 18 windscreen_dummy IS_DAMAGABLE, IS_FRONT_SIDE, 10, IS_WINDSCREEN 19 exhaust_ok IS_DAMAGABLE, IS_REAR_SIDE 20 misc_a - 21 misc_b - 22 misc_c - 23 misc_d - 24 misc_e -
Дамми
№ Название Флаги 0 headlights IS_NOT_IN_ARRAY, IS_POS_DUMMY 1 taillights IS_NOT_IN_ARRAY, IS_POS_DUMMY 2 headlights2 IS_NOT_IN_ARRAY, IS_POS_DUMMY 3 taillights2 IS_NOT_IN_ARRAY, IS_POS_DUMMY 4 ped_frontseat IS_NOT_IN_ARRAY, IS_POS_DUMMY 5 ped_backseat IS_NOT_IN_ARRAY, IS_POS_DUMMY 6 exhaust IS_NOT_IN_ARRAY, IS_POS_DUMMY 7 engine IS_NOT_IN_ARRAY, IS_POS_DUMMY 8 petrolcap IS_NOT_IN_ARRAY, IS_POS_DUMMY 9 hookup IS_NOT_IN_ARRAY, IS_POS_DUMMY 10 ped_arm IS_NOT_IN_ARRAY, IS_POS_DUMMY 11 miscpos_c IS_NOT_IN_ARRAY, IS_POS_DUMMY 12 miscpos_d IS_NOT_IN_ARRAY, IS_POS_DUMMY 13 miscpos_a IS_NOT_IN_ARRAY, IS_POS_DUMMY 14 miscpos_b IS_NOT_IN_ARRAY, IS_POS_DUMMY
Экстры
№ Название Флаги 0 extra1 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra2 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra3 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra4 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra5 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra6 IS_NOT_IN_ARRAY, IS_EXTRA, 10
Апгрейд
№ Название Флаги 0 ug_bonnet IS_NOT_IN_ARRAY, IS_UPGRADE 1 ug_bonnet_left IS_NOT_IN_ARRAY, IS_UPGRADE 2 ug_bonnet_right IS_NOT_IN_ARRAY, IS_UPGRADE 3 ug_bonnet_dam IS_NOT_IN_ARRAY, IS_UPGRADE 4 ug_bonnet_left_dam IS_NOT_IN_ARRAY, IS_UPGRADE 5 ug_bonnet_right_dam IS_NOT_IN_ARRAY, IS_UPGRADE 6 ug_spoiler IS_NOT_IN_ARRAY, IS_UPGRADE 7 ug_spoiler_dam IS_NOT_IN_ARRAY, IS_UPGRADE 8 ug_wing_left IS_NOT_IN_ARRAY, IS_UPGRADE 9 ug_wing_right IS_NOT_IN_ARRAY, IS_UPGRADE 10 ug_frontbullbar IS_NOT_IN_ARRAY, IS_UPGRADE 11 ug_backbullbar IS_NOT_IN_ARRAY, IS_UPGRADE 12 ug_lights IS_NOT_IN_ARRAY, IS_UPGRADE 13 ug_lights_dam IS_NOT_IN_ARRAY, IS_UPGRADE 14 ug_roof IS_NOT_IN_ARRAY, IS_UPGRADE 15 ug_nitro IS_NOT_IN_ARRAY, IS_UPGRADE
Boat
Компоненты
№ Название Флаги 1 boat_moving_hi - 2 windscreen_hi_ok 10, IS_WINDSCREEN 3 boat_rudder_hi - 4 boat_flap_left - 5 boat_flap_right - 6 boat_rearflap_left - 7 boat_rearflap_right - 8 static_prop IS_REAR_SIDE, 18 9 moving_prop IS_REAR_SIDE, 10, 18 10 static_prop2 IS_REAR_SIDE, 18 11 moving_prop2 IS_REAR_SIDE, 10, 18
Дамми
№ Название Флаги 0 ped_frontseat IS_NOT_IN_ARRAY, IS_POS_DUMMY
Экстры
№ Название Флаги 0 extra1 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra2 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra3 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra4 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra5 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra6 IS_NOT_IN_ARRAY, IS_EXTRA, 10
Bike
Компоненты
№ Название Флаги 1 chassis_dummy - 2 forks_front - 3 forks_rear - 4 wheel_front - 5 wheel_rear - 6 mudguard - 7 handlebars - 8 misc_a - 9 misc_b -
Дамми
№ Название Флаги 0 headlights IS_NOT_IN_ARRAY, IS_POS_DUMMY 1 taillights IS_NOT_IN_ARRAY, IS_POS_DUMMY 2 headlights2 IS_NOT_IN_ARRAY, IS_POS_DUMMY 3 taillights2 IS_NOT_IN_ARRAY, IS_POS_DUMMY 4 ped_frontseat IS_NOT_IN_ARRAY, IS_POS_DUMMY 5 ped_backseat IS_NOT_IN_ARRAY, IS_POS_DUMMY 6 exhaust IS_NOT_IN_ARRAY, IS_POS_DUMMY 7 engine IS_NOT_IN_ARRAY, IS_POS_DUMMY 8 petrolcap IS_NOT_IN_ARRAY, IS_POS_DUMMY 9 hookup IS_NOT_IN_ARRAY, IS_POS_DUMMY 10 bargrip IS_NOT_IN_ARRAY, IS_POS_DUMMY 11 miscpos_a IS_NOT_IN_ARRAY, IS_POS_DUMMY 12 miscpos_b IS_NOT_IN_ARRAY, IS_POS_DUMMY
Экстры
№ Название Флаги 0 extra1 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra2 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra3 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra4 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra5 IS_NOT_IN_ARRAY, IS_EXTRA, 10 0 extra6 IS_NOT_IN_ARRAY, IS_EXTRA, 10
Повреждение компонентов
Визуальное повреждение реализовано включением/отключением (флаг rpATOMICRENDER RpAtomic) целой/повреждённой версии компонента. Повреждаемый компонент заведомо содержит целую и повреждённую версии моделей. Они определяются наличием в имени суффиксов
_ok - целый компонент _dam - повреждённый компонент
В иерархии это выглядит так:
node | +--node_ok | +--node_dam
При обработке иерархии модели, геометрия компонентов (RpAtomic) с суффиксами node_ok и node_dam переходит к компоненту node, а сами компоненты (RwFrame) удаляются.