Вопрос №48
После внедрения юнита в игру происходит эффект "зависания" юнита в воздухе. В чем может быть проблема и как ее решить ?
1) Не прописаны комментарии.
2) Не поставлен Enter в конце после комментариев (например, пишем sword, потом sword 0, затем 0, после всего этого нужно Enter поставить).
3) Не привязаны объекты к костям.
4) Новые объекты сразу помещены на текущую модель, а нужно было открыть их в MilkShape3D, удалить все материалы, сохранить, потом открыть модель с костями и внедрить новый объект в текущую модель, после осуществлять привязка и пропись комментариев. Материалы на модели с костями не следует трогать.
Вопрос №49
Как поменять юниту анимацию боя ?
Анимация боя прописывается в файле battle_models.modeldb (путь: Medieval II - Total War\mods\Third_Age_3\data\unit_models)
Рассмотрим частный случай: взят юнит-копейщик, перед нами стоит задача поменять ему оружие на меч.
В этой ситуации анимацию можно поставить от любого мечника в игре.
Например, анимация пехотинца Гондора (TATW), в export_descr_unit.txt (далее EDU) этот юнит называется Gondor Infantry, его код в EDU следующий:
type Gondor Infantry
dictionary Gondor_Infantry ; Gondor Infantry
category infantry ; Quality
class heavy
voice_type Heavy
accent GondorInfantry
banner faction main_infantry
banner holy crusade
soldier
gondor_infantry, 60, 0, 1.25
officer gondor_banner_carrier_ug1
officer gondor_officer_ug2
mount_effect elephant -4
attributes sea_faring, hide_forest, can_withdraw, hardy, free_upkeep_unit
formation 1.2, 1.2, 2.4, 2.4, 4, square, shield_wall
stat_health 1, 2
stat_pri 7, 4, no, 0, 0, melee, melee_blade, piercing, sword, 30, 1
stat_pri_attr no
stat_sec 0, 0, no, 0, 0, no, melee_simple, blunt, none, 0, 1
stat_sec_attr no
stat_pri_armour 11, 6, 5, metal ; partial plate / mail
stat_sec_armour 0, 0, flesh
stat_heat 7
stat_ground -1, -2, 0, -3
stat_mental 13, disciplined, trained
stat_charge_dist 6
stat_fire_delay 0
stat_food 60, 300
stat_cost 2, 800, 300, 75, 75, 800, 4, 150
armour_ug_levels 3, 4, 5
armour_ug_models gondor_infantry, gondor_infantry_ug1, gondor_infantry_ug2
ownership sicily, timurids
era 0 sicily
era 1 sicily
era 2 sicily
recruit_priority_offset 80
В строке
soldier выделенный код gondor_infantry - это название модели юнита, оно же и отвечает за анимацию юнита и всех его апгрейдов.
Нам необходимо скопировать этот код и найти его в файле battle_models.modeldb :
15 gondor_infantry
1 1
42 unit_models/_Units/NGU/swordsmen_lod0.mesh 6400
3
6 sicily
53 unit_models/_Units/NGU/textures/soldiers_diff.texture
53 unit_models/_Units/NGU/textures/soldiers_norm.texture
46 unit_sprites/sicily_gondor_infantry_sprite.spr
8 timurids
53 unit_models/_Units/NGU/textures/soldiers_diff.texture
53 unit_models/_Units/NGU/textures/soldiers_norm.texture
46 unit_sprites/sicily_gondor_infantry_sprite.spr
4 merc
53 unit_models/_Units/NGU/textures/soldiers_diff.texture
53 unit_models/_Units/NGU/textures/soldiers_norm.texture
46 unit_sprites/sicily_gondor_infantry_sprite.spr
3
6 sicily
68 unit_models/_Units/NGU/attachments/soldiers_attachments_diff.texture
68 unit_models/_Units/NGU/attachments/soldiers_attachments_norm.texture 0
8 timurids
68 unit_models/_Units/NGU/attachments/soldiers_attachments_diff.texture
68 unit_models/_Units/NGU/attachments/soldiers_attachments_norm.texture 0
4 merc
68 unit_models/_Units/NGU/attachments/soldiers_attachments_diff.texture
68 unit_models/_Units/NGU/attachments/soldiers_attachments_norm.texture 0
1
4 None
14 MTW2_Swordsman 0
2
18 MTW2_Sword_Primary
14 fs_test_shield 0
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
Выделенным обозначен код анимации боя мечом. Нам нужно всего лишь скопировать его и вставить аналогично в блок записей для требуемого юнита.
Стоит обратить внимание, что в случае, если прописыватся модель апгрейда, то ей присваивается точно такая же анимация, как и в изначальном (безапгрейдном) варианте модели, иначе у юнита будет разная анимация при улучшении брони.
В итоге, для замены анимации боя юнита достаточно только поменять анимацию в battle_models.modeldb для безапгрейдного юнита - тогда у остальных его апгрейдовбудет использоваться новая анимация. Главное указать в строке soldier нужного юнита.
Вопрос №50
Как узнать, к какой кости прикреплен обьект модели в MilkShape3D ?
Существует 2 варианта:
1. Открываем вкладку Joints и ставим флажок на опции Draw Vertex Weights.
2. Выбираеm при помощи Select объект, открываем вкладку Joints и нажимаем Show, после чего будет показана привязка в цифрах.
Сообщение отредактировал Master_TW_DAR: 26 Июль 2014 - 22:08