Голосование

Как вы оцениваете Смуту?












Оформление



Пользователей
  • Всего: 28871
  • Последний: 123WwW2004
Сейчас на форуме
Пользователи: 2
Гостей: 225
Всего: 227

0 Пользователей и 1 Гость просматривают эту тему.

Тема: [Edit] Open-BRF editor (v0.0.81b)  (Прочитано 214642 раз)

  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
+9
« : 14 Августа, 2009, 14:28 »
Автор: mtarini 
Под версию: M&B 1.011/Warband

Под-форум редактора
Скачать v0.0.81b (7,5 мб)

Open-BRF - более совершенный BRF редактор. С этой программой можно более углубленно редактировать модели, работать со скелетами, создавать свои материалы. Также, благодаря этому редактору можно изменять размер человеческого скелета в игре (изменять скелет лошади пока что невозможно).

Туториал: Создание новых скелетов и изменение их размера от cdvader (перевод от Sithlord)

Туториал 2: Добавление новой анимации от cdvader (перевод от Sithlord)

Туториал 3: О замене старой анимации собственной

Туториал 4: О привязке ботинок к скелету


Чего можно достичь, с помощью этого редактора:

Ролики с демонстрацией новой анимации:
« Последнее редактирование: 24 Августа, 2013, 14:17 от trueten »
  • Сообщений: 15
    • Просмотр профиля
0
« Ответ #1 : 14 Августа, 2009, 17:43 »
Это вообще новая прога как я понял и ее сделал другой человек.Наконец то можно редактировать скелеты и анимацию в игре,это прорыв однако.Вот уже и тутор по редактированию и добавлению новой анимации в игру на буржуйском форуме есть http://forums.taleworlds.net/index.php/topic,72992.0.html
  • Сообщений: 997
    • Просмотр профиля
0
« Ответ #2 : 14 Августа, 2009, 20:55 »
Вроди полезная прога, ещё только вскользь ознакамливался, а если там ещё и анимацию править можно-так это вообще круто. Мне пригодится. :thumbup:
  • Ник в M&B: DRZ_Yar
  • Сообщений: 15
    • Просмотр профиля
0
« Ответ #3 : 15 Августа, 2009, 20:37 »
Ну вот вроде бы буржуям удалось впихнуть в игру новый скелет,так что создателям фентези модов наконец то можно нормально реализовать всяких нелюдей.Вот и тутор http://forums.taleworlds.net/index.php/topic,73231.0.html на бусурманском.
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #4 : 15 Августа, 2009, 22:25 »
Krig
Спасибо, добавил. Теперь надо бы его перевести...
  • Сообщений: 1705
  • ЗАБАНЕН!
    • Просмотр профиля
0
« Ответ #5 : 16 Августа, 2009, 01:42 »
Перевод туториала от cdvader'а (про создание новых скелетов):

1)Введение.
Привет еще раз, ребята, это cdvader и мой новый туториал. Я очень рад, что написал этот туториал, и я уже представляю, какого рода гномы, тролли, хоббиты, и иные существа будут созданы с его помощью. Сегодня мы будем делать новый скелет с рабочей анимацией путем дублирования старого человеческого скелета. Этот процесс будет очень легким, и я думаю что у вас все получится без проблем.

Прежде чем я начну, я должен сказать, очень, очень большое спасибо mtarini. Спасибо!

2)Что нам нужно?
Естессно сама игра.
Mount & Blade - Версия 1.011.
Mount & Blade - модульная система для версии 1.011.

Какую-то программу для редактирования анимации. Вот две из (вероятно) наиболее известных:
Autodesk 3ds Max
Blender

И импорт / экспорт SMD скриптов для них.
3ds Max SMD Импорт / Экспорт
Blender SMD Импорт
Рабочий Blender Экспорт скрипотов.

Ну и конечно же 2 самые важные вещи:
Open BRF
Iron Launcher

3)ЧАСТЬ 1 - Подготовка.
Хорошо. Прежде всего, убедитесь, что у вас есть Mount & Blade и что она работает правильно, также Вам понадобится некоторое знание модульной системы. Повторяю, я очень рекомендую Официальную документацию к ModuleSystem, а также документацию товарища Jik к ModuleSystem.

Теперь давайте продолжим. Установите OpenBRF. Просто скачайте и извлеките его куда-нибудь, например на рабочий стол (Это хорошее место, лично у меня он хранится именно там). OpenBRF очень хорошая альтернатива BRFEdit, поскольку она может изменить анимацию и скелеты, которые BRFEdit не могут. Однако, поскольку OpenBRF находится в очень ранней стадии развития (альфа-стадии), к сожалению не имеет всех необходимых функций, таких как Материалы, Сталкновения или Шейдерные вкладки. Таким образом в настоящее время необходимо использовать OpenBRF только для изменения скелетов и анимации, а BRFEdit для всех остальных. Но я совершенно уверен, что в скором времени OpenBRF будет лучше и будет выполнять все необходимые функции.

Следующий шаг состоит в том, чтобы получить программу, редактирующую анимации и скелеты. Blender немного сложен, но довольно неплох. Его преимуществом является также то, что но распространяется бесплатно. Другое решение - 3ds Max. Он лучше во всех отношениях, особенно в части цены. Вот только стоит он около 3500 $. Лично я использую 3ds Max. Чтобы получить его либо скачайте 30-дневную пробную версию, или же получите коммерческое издание (или вроде того) из школы.

После того как вы получили программу для редактирования скелета и анимации вам понадобится Iron Launcher с вашим модулем. Это просто - скачайте Iron Launcher извлеките его и вставьте все содержимое папки IronLauncher'а в папку вашего модуля. Я отправил ярлык "IronLauncher.exe" на мой рабочий стол для быстрого доступа к моему мод. Iron Launcher необходим для создания рабочего скелета.

Теперь давайте продолжим...

4)Часть 2 - Добавление нового скелета.
Чудесно. В этой части мы будем создавать скелет Горного Гиганта. Мы не будем делать новые головы, руки и ноги (которые, к сожалению, необходимы). В самом деле, одной из сторон создания нового скелета является то, что Вы должны пересмотреть все органы, голову, руки и ноги, если вы хотите создать полноценного гиганта. Но хватит болтать - Начнем! ;)

Во-первых, откройте OpenBRF. Теперь откройте 'body_meshes.brf ". Нажмите на "man_body и экспортируйте как Rigged Mesh. Сохраните его как "giant_body.smd". Теперь вы можете закрыть OpenBRF. Импортируйте "giant_body.smd" в вашу программу редактирования скелета и анимаций (я использую 3ds Max в данном учебнике). Обратите внимание, прежде чем мы начнем: у вас есть только 1 попытка, если вы потерпите неудачу и реимпортируете модель после этого , то скелет станет непригоден.

Хорошо. Теперь создайте поле или плоскость прямо под моделью "man_body" в Вашей программе. Это очень важно, мы будем использовать поле позднее дабы переместить скелет в нужное место. Теперь выберите все кроме поля, и увеличте вашу новую модель в несколько раз. Я увеличил ее этак раза в 4.Теперь переместите вашу новую увеличенную модель, чтобы она немного прикоснулась ногами к полю. Удалить поле и экспортируйте модель как "giant_body.smd". Экспортируйте ее как Reference SMD. Теперь, по-прежнему в той же сцене, удалите Mesh (сетку (?)). Только Mesh (сетку)! Оставьте кости. А затем экспортируйте ее снова, на этот раз как "skel_giant". Экспортируйте ее как "Sequence SMD". Теперь вы можете закрыть вашу программу.

Отлично. Теперь откройте OpenBRF и импортируйте 'skel_giant" как "скелет". Не удивлюсь, если кости кажутся слишком далеко друг от друга (я едва нашли кости, я сделал каркас настолько большим). Теперь сохраните .brf как "skel_giant.brf" и поставьте его в свой модуль в папку Resource. Теперь перейдите к Файл> Создать и bмпортируйте 'giant_body.smd" как Rigged Mesh. Сохраните .brf как "giant_body.brf". Теперь вы можете закрыть OpenBRF.

Превосходно, теперь откройте module.ini своего мода. Вставьте эти две строки в самом низу:

Цитировать (выделенное)
load_mod_resoure  = skel_giant
load_mod_resource = giant_body

Теперь вы можете закрыть module.ini. Прежде чем перейти к следующему шагу, убедитесь, что у вас есть установленный Iron Launcher. Это очень важно! Так, теперь скопируйте данные из папки Program Files / Mount & Blade в папку вашего мода. В данной папке откройте "skeleton_bodies.xml" и вставьте после последнего </Skeleton> (Примечание: НЕ </Skeletons>). Я не редактировал ничего кроме имени. Я в этом пока не разбирался, но mtarini сказал что это для данных hitbox и подобного.

Цитировать (выделенное)
<Skeleton name="skel_giant">
    <Bones>
      <Bone name="hb_abdomen" bone_mass="10" bone_twist_limit="20" bone_cone_max="30"> <Bodies> <body type="capsule" radius="0.15" pos_x="-0.0327" pos2_x="0.0327" pos_y="-0.045900" pos2_y="-0.045900" pos_z="0.040400" pos2_z="0.040400"/> </Bodies> </Bone>
      <Bone name="hb_thigh_l" bone_mass="10" bone_twist_limit="30" bone_cone_max="70"><Bodies> <body type="capsule" radius="0.09" pos_x="0.0045" pos2_x="0.0045" pos_y="0.089725" pos2_y="0.434114" pos_z="0.027649" pos2_z="0.043844"/></Bodies> </Bone>
      <Bone name="hb_calf_l" bone_mass="6" rotate_side="45" bone_twist_limit="45"  bone_cone_min = "-5" bone_cone_max="5" socket_dir_y="0.0" socket_dir_x="0.9"><Bodies> <body type="capsule" radius="0.06" pos_x="0.0076" pos2_x="0.0076" pos_y="0.071147" pos2_y="0.447461" pos_z="0.058433" pos2_z="0.005583"/></Bodies></Bone>
      <Bone name="hb_foot_l"></Bone>
      <Bone name="hb_thigh_r" bone_mass="10" bone_twist_limit="30"  bone_cone_max="70"><Bodies> <body type="capsule" radius="0.09" pos_x="-0.0045" pos2_x="-0.0045" pos_y="0.089725" pos2_y="0.434114" pos_z="0.027649" pos2_z="0.043844"/></Bodies> </Bone>
      <Bone name="hb_calf_r" bone_mass="6" rotate_side="45" bone_twist_limit="45"  bone_cone_min = "-5" bone_cone_max="5" socket_dir_y="0.0" socket_dir_x="0.9"><Bodies> <body type="capsule" radius="0.06" pos_x="-0.0076" pos2_x="-0.0076" pos_y="0.071147" pos2_y="0.447461" pos_z="0.058433" pos2_z="0.005583"/></Bodies></Bone>
      <Bone name="hb_foot_r"></Bone>
      <Bone name="hb_spine" bone_mass="10" bone_twist_limit="20" bone_cone_max="30"> <Bodies> <body type="capsule" radius="0.14" pos_x="0.028570" pos2_x="-0.026203" pos_y="0.131210" pos2_y="0.131584" pos_z="0.008536" pos2_z="0.010200"/> </Bodies> </Bone>
      <Bone name="hb_thorax" bone_mass="10" bone_twist_limit="20" bone_cone_max="30"> <Bodies> <body type="capsule" radius="0.145" pos_x="-0.046671" pos2_x="0.046902" pos_y="0.111923" pos2_y="0.111877" pos_z="0.003622" pos2_z="0.001374"/> </Bodies></Bone>
      <Bone name="hb_head" bone_mass="3" bone_twist_limit="60"  bone_cone_max="70"> <Bodies> <body type="capsule" radius="0.09" pos_x="-0.002853" pos2_x="-0.004396" pos_y="0.004160" pos2_y="0.102851" pos_z="0.000345" pos2_z="-0.009731"/> </Bodies></Bone>
      <Bone name="hb_shoulder_l" bone_mass="3" bone_twist_limit="50" bone_cone_max="10"><Bodies> <body type="capsule" radius="0.065" pos_x="-0.003582" pos2_x="-0.003063" pos_y="0.129283" pos2_y="0.162886" pos_z="-0.003477" pos2_z="-0.000981"/></Bodies> </Bone>
      <Bone name="hb_upperarm_l" bone_mass="4" rotate_side="-60" bone_twist_limit="20" bone_cone_max="40"> <Bodies> <body type="capsule" radius="0.06" pos_x="-0.004050" pos2_x="-0.003737" pos_y="0.068400" pos2_y="0.218365" pos_z="-0.012791" pos2_z="-0.009558"/></Bodies></Bone>
      <Bone name="hb_forearm_l" bone_mass="2" rotate_up="-45" bone_twist_limit="45" bone_cone_max="5" socket_dir_z="1"> <Bodies> <body type="capsule" radius="0.052" pos_x="0.007783" pos2_x="0.006982" pos_y="0.013050" pos2_y="0.238987" pos_z="-0.014167" pos2_z="-0.020907"/></Bodies></Bone>
      <Bone name="hb_hand_l"> </Bone>
      <Bone name="hb_item_l"> </Bone>
      <Bone name="hb_shoulder_r" bone_mass="3" bone_twist_limit="50" bone_cone_max="10"> <Bodies> <body type="capsule" radius="0.065" pos_x="0.003582" pos2_x="0.003063" pos_y="0.129283" pos2_y="0.162886" pos_z="-0.003477" pos2_z="-0.000981"/></Bodies> </Bone>
      <Bone name="hb_upperarm_r" bone_mass="4" rotate_side="-60" bone_twist_limit="20" bone_cone_max="40"><Bodies> <body type="capsule" radius="0.06" pos_x="0.004050" pos2_x="0.003737" pos_y="0.068400" pos2_y="0.218365" pos_z="-0.012791" pos2_z="-0.009558"/></Bodies></Bone>
      <Bone name="hb_forearm_r" bone_mass="2" rotate_up="45" bone_twist_limit="45" bone_cone_max="5" socket_dir_z="-1"> <Bodies> <body type="capsule" radius="0.052" pos_x="-0.007783" pos2_x="-0.006982" pos_y="0.013050" pos2_y="0.238987" pos_z="-0.014167" pos2_z="-0.020907"/></Bodies></Bone>
      <Bone name="hb_hand_r"> </Bone>
      <Bone name="hb_item_r"> </Bone>
    </Bones>
  </Skeleton>

Сохраните и теперь можно закрыть "skeleton_bodies.xml". Перейдите в вашу ModuleSystem и откройте 'header_troops.py ". Вставьте это после "tf_female":

Цитировать (выделенное)
tf_giant          = 2

Сохраните и закройте 'header_troops.py". Давайте двигаться дальше. Теперь откройте "module_skins.py" и вставьте эту информацию:
Цитировать (выделенное)
(
    "giant", 0,
    "giant_body", "man_calf_l", "m_handL",
    "male_head", man_face_keys,
    ["man_hair_s","man_hair_m","man_hair_n","man_hair_o", "man_hair_y10", "man_hair_y12","man_hair_p","man_hair_r","man_hair_q","man_hair_v","man_hair_t","man_hair_y6","man_hair_y3","man_hair_y7","man_hair_y9","man_hair_y11","man_hair_u","man_hair_y","man_hair_y2","man_hair_y4"], #man_hair_meshes ,"man_hair_y5","man_hair_y8",
    ["beard_e","beard_d","beard_k","beard_l","beard_i","beard_j","beard_z","beard_m","beard_n","beard_y","beard_p","beard_o",   "beard_v", "beard_f", "beard_b", "beard_c","beard_t","beard_u","beard_r","beard_s","beard_a","beard_h","beard_g",], #beard meshes ,"beard_q"
    ["hair_blonde", "hair_red", "hair_brunette", "hair_black", "hair_white"], #hair textures
    ["beard_blonde","beard_red","beard_brunette","beard_black","beard_white"], #beard_materials
    [("manface_young_2",0xffcbe0e0,["hair_blonde"],[0xffffffff, 0xffb04717, 0xff502a19]),
     ("manface_midage",0xffdfefe1,["hair_blonde"],[0xffffffff, 0xffb04717, 0xff632e18, 0xff502a19, 0xff19100c]),
     ("manface_young",0xffd0e0e0,["hair_blonde"],[0xff83301a, 0xff502a19, 0xff19100c, 0xff0c0d19]),    
#     ("manface_old",0xffd0d0d0,["hair_white","hair_brunette","hair_red","hair_blonde"],[0xffffcded, 0xffbbcded, 0xff99eebb]),
     ("manface_young_3",0xffdceded,["hair_blonde"],[0xff2f180e, 0xff171313, 0xff007080c]),
     ("manface_7",0xffc0c8c8,["hair_blonde"],[0xff171313, 0xff007080c]),
     ("manface_midage_2",0xfde4c8d8,["hair_blonde"],[0xff502a19, 0xff19100c, 0xff0c0d19]),
     ("manface_rugged",0xffb0aab5,["hair_blonde"],[0xff171313, 0xff007080c]),
#     ("manface_young_4",0xffe0e8e8,["hair_blonde"],[0xff2f180e, 0xff171313, 0xff007080c]),
     ("manface_african",0xff807c8a,["hair_blonde"],[0xff120808, 0xff007080c]),    
#     ("manface_old_2",0xffd5d5c5,["hair_white"],[0xffffcded, 0xffbbcded, 0xff99eebb]),
     ], #man_face_textures,
    [(voice_die,"snd_man_die"),(voice_hit,"snd_man_hit"),(voice_grunt,"snd_man_grunt"),(voice_grunt_long,"snd_man_grunt_long"),(voice_yell,"snd_man_yell"),(voice_victory,"snd_man_victory")], #voice sounds
    "skel_giant", 1.0,
    psys_game_blood,psys_game_blood_2,
    [[1.7, comp_greater_than, (1.0,face_width), (1.0,temple_width)], #constraints: ex: 1.7 > (face_width + temple_width)
     [0.3, comp_less_than, (1.0,face_width), (1.0,temple_width)],
     [1.7, comp_greater_than, (1.0,face_width), (1.0,face_depth)],
     [0.3, comp_less_than, (1.0,eyebrow_height), (1.0,eyebrow_position)],
     [1.7, comp_greater_than, (1.0,eyebrow_height), (1.0,eyebrow_position)],
     [-0.7, comp_less_than, (1.0,nose_size), (-1.0,nose_shape)],
     [0.7, comp_greater_than, (1.0,nose_size), (-1.0,nose_shape)],
     [2.7, comp_greater_than, (1.0,chin_size), (1.0,mouth_nose_distance), (1.0,nose_height), (-1.0,face_width)],
     ]
  ),
Прямо перед последним "]". Сохраните и закройте. Откройте "module_game_menus.py" и вставьте после Female option:
Цитировать (выделенное)
("start_giant", [], "Mountain Giant.",
      [(troop_set_type, "trp_player", 4),
       (assign, "$character_gender", tf_giant),
      (jump_to_menu, "mnu_start_character_2"),
      ]),
Теперь можете сохранить и закрыть. Откомпилируйте. Если вы получите какие-либо ошибки, просто снова откомпилируйте и они должны уйти. Если они все еще будут появляться, убедитесь, что вы все сделали правильно. Теперь зайдите в игру и проверьте вашего нового Горного Гиганта!!

PS: Убедитесь, что вы начнете игру с помощью Iron Launcher'а.
cdvader.

Критическое обновление (15/08/09) - кажется, что новый созданный вами .brf файл не будет работать. Ваш новый скелет ДОЛЖЕН быть в skeletons.brf ...

Самое последнее крит. обновление немного не понял... Вроде как можно сделать так, что персонажи будут летать по воздуху (будет такая анимация). Такого эффекта можно добиться если ноги не возвращать к тому полю (поднять их выше его), которое было в 3-ем абзаце 4-го пункта...

Credits.
Огромное спасибо mtarini за Open-BRF,
Огромное спасибо Swyter за Iron Launcher,
И, конечно, огромное спасибо Армагану за Mount & Blade.

Завтра про анимации переведу, а то поздно уже...
« Последнее редактирование: 16 Августа, 2009, 01:56 от SithLord »
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #6 : 16 Августа, 2009, 01:51 »
SithLord
Супер!!!
Всуну в первый пост.
  • Сообщений: 2740
  • За создание крупных модов и других особо сложных проектов
    • Просмотр профиля
0
« Ответ #7 : 16 Августа, 2009, 07:35 »
Прога то шо надо
  • Ник в M&B: DRZ_Mark7
  • Фракция: Вегиры
  • Сообщений: 997
    • Просмотр профиля
0
« Ответ #8 : 16 Августа, 2009, 11:21 »
Эх... Жаль не располагаю на данный момент Blenderом  и Iron Launcherом.
А так бы хотелось прям щас гнома сляпать...
  • Ник в M&B: DRZ_Yar
  • Сообщений: 3727
  • За создание технических проектов различного характера За регистрацию на форуме не позже сентября 2008 года Призер конкурса Мастер полигона и текселя
    • Просмотр профиля
0
« Ответ #9 : 16 Августа, 2009, 11:36 »
Я понимаю если создать соединить два скелета (лошади и человака) можно создать кентавра  ;)
«Самая большая проблема для теории эволюции — как возникла жизнь. Поскольку для создания белков нужна РНК, для создания РНК нужна ДНК, а для создания ДНК нужны белки. То есть эта проблема серьёзнее, чем "что возникло раньше — курица или яйцо"».
Джеффри Томкинс, Ph.D. (генетика), Университет Клемсона.
  • Сообщений: 494
    • Просмотр профиля
0
« Ответ #10 : 16 Августа, 2009, 11:59 »
Скрины супер!!! :thumbup:богатырь!! :D
  • Сообщений: 794
    • Просмотр профиля
    • The chronicles of azeroth
0
« Ответ #11 : 16 Августа, 2009, 13:02 »
То есть можно абсолютно новый скелет сделать?К примеру нагу и анимацию ползания тоже?
Ничто не истина и всё дозволено.

Официальный чат разработчиков мода "Хроники Азерота"
http://russchat.com/mnbwarcraftmod/

Производится набор в команду разработчиков мода "Хроники Азерота" .Нужны все кроме историков.Свои предложения пишите мне в ЛС.
С уважением, Masson
  • Сообщений: 15
    • Просмотр профиля
0
« Ответ #12 : 16 Августа, 2009, 13:21 »
То есть можно абсолютно новый скелет сделать?К примеру нагу и анимацию ползания тоже?
Как я понял с английского форума они пока не знают как прикрутить новые анимации к скелету,поэтому пока что вроде  можно только добавлять новые скелеты на основе человеческого или лошадиного с использованием стандартных анимаций для них.Ну или допустим можно сделать полностью новый скелет с таким же количеством костей и полностью новым комплектом анимации и заменить ими ванильные...как то так...
  • Сообщений: 412
    • Просмотр профиля
0
« Ответ #13 : 16 Августа, 2009, 14:03 »
Цитировать (выделенное)
можно сделать полностью новый скелет с таким же количеством костей и полностью новым комплектом анимации и заменить ими ванильные

А ведь так можно сделать правильных, ковыляющих зомби!
  • Ник в M&B: Clockwork_Berserker
  • Сообщений: 794
    • Просмотр профиля
    • The chronicles of azeroth
0
« Ответ #14 : 16 Августа, 2009, 17:30 »
А можно ли тогда сделать хорошую анимацию перезарядки ружей, револьверов?
Ничто не истина и всё дозволено.

Официальный чат разработчиков мода "Хроники Азерота"
http://russchat.com/mnbwarcraftmod/

Производится набор в команду разработчиков мода "Хроники Азерота" .Нужны все кроме историков.Свои предложения пишите мне в ЛС.
С уважением, Masson
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #15 : 16 Августа, 2009, 17:45 »
Masson
Можно. Dain Ironfoot в моде Peninsular War добавил детальную анимацию перезарядки ружья, так же анимацию марширования солдата с ружьем на плече.
  • Сообщений: 39421
  • За регистрацию на форуме не позже сентября 2008 года И создали они сайт...
    • Просмотр профиля
0
« Ответ #16 : 16 Августа, 2009, 18:54 »
Интересно, этому годзиле придеться делать отдельное снаряжение или на него натянеться старое?. Думаю будет как в Стар Ворс.
  • Ник в M&B: Sellsword
Привыкший сражаться не жнет и не пашет:
Хватает иных забот.
Налейте наемникам полные чаши!
Им завтра – снова в поход!
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #17 : 16 Августа, 2009, 19:11 »
Интересно, этому годзиле придется делать отдельное снаряжение или на него натянеться старое?

Придется. Нужно ведь размеры учитывать... а то получится вот такая херня:


  • Сообщений: 494
    • Просмотр профиля
0
« Ответ #18 : 16 Августа, 2009, 19:18 »
Яроглека
первый пост смотри
  • Сообщений: 39421
  • За регистрацию на форуме не позже сентября 2008 года И создали они сайт...
    • Просмотр профиля
0
« Ответ #19 : 16 Августа, 2009, 19:56 »
Здесь может не в шлеме дело, может просто неизмененную голову прицепили к измененному телу?
  • Ник в M&B: Sellsword
Привыкший сражаться не жнет и не пашет:
Хватает иных забот.
Налейте наемникам полные чаши!
Им завтра – снова в поход!
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #20 : 16 Августа, 2009, 20:22 »
NightHawkreal
Вот строка из туториала:
We will not make new heads, hands and legs (Which, unfortunately, are necessary). In fact, the only down-side of adding a new skeleton is that you must re-scale all the bodies, heads, hands and legs if you want it to work with the Giant.

То есть необходимо менять пропорции всех частей тела, и, следовательно, всех необходимых моделей типа шлемов, брони, оружия, щитов...
  • Сообщений: 1705
  • ЗАБАНЕН!
    • Просмотр профиля
0
« Ответ #21 : 17 Августа, 2009, 01:13 »
Вот, как и обещал, перевод инструкции по созданию новых анимаций от cdvader'a:

1)Введение.
Привет, это снова CdVader с новым учебником. На этот раз я покажу вам как добавлять новые анимации или редактировать уже существующие. Причиной создания этого учебника стал увиденный мною пост: "Ээй!!! Почему вы не сделали учебник?!!!" Вот и решил сделать этот учебник по просьбе многих людей.

В любом случае благодаря mtarini сейчас мы можем изменять, добавлять, и делать все что угодно с анимацией. Теперь давайте начнем.

2)Что нам нужно?
Игра:
Mount & Blade - Версия 1.011.
Mount & Blade - модульная система для версии 1.011.

Какую-то программу для редактирования анимации. Вот две из (вероятно) наиболее известных:
Autodesk 3ds Max
Blender

И импорт / экспорт SMD скриптов для них.
3ds Max SMD Импорт / Экспорт
Blender SMD Импорт
Рабочий Blender Экспорт скрипотов.

И конечно же Open BRF

3)Часть 1 - Подготовка.
Хорошо. Прежде всего убедитесь, что у вас есть рабочая копия Mount & Blade v1.011 и ModuleSystem. Прежде чем приступить к работе с анимацией вы должны иметь некоторые знания о модульной системе. Я очень рекомендую официальную документацию к ModuleSystem, а также документацию Jik к ModuleSystem. Теперь можно продолжить.

Теперь давайте продолжим. Установите OpenBRF. Просто скачайте и извлеките его куда-нибудь, например на рабочий стол (Это хорошее место, лично у меня он хранится именно там). OpenBRF очень хорошая альтернатива BRFEdit, поскольку она может изменить анимацию и скелеты, которые BRFEdit не могут. Однако, поскольку OpenBRF находится в очень ранней стадии развития (альфа-стадии), к сожалению не имеет всех необходимых функций, таких как Материалы, Сталкновения или Шейдерные вкладки. Таким образом в настоящее время необходимо использовать OpenBRF только для изменения скелетов и анимации, а BRFEdit для всех остальных. Но я совершенно уверен, что в скором времени OpenBRF будет лучше и будет выполнять все необходимые функции.

Следующий шаг состоит в том, чтобы раздобыть программу, редактирующую анимации и скелеты. Blender немного сложен, но довольно неплох. Его преимуществом является также то, что он распространяется бесплатно. Другое решение - 3ds Max. Он лучше во всех отношениях, особенно в части цены. Вот только стоит он около 3500 $. Лично я использую 3ds Max. Чтобы получить его либо скачайте 30-дневную пробную версию, или же получите коммерческое издание (или вроде того) из школы.

Вот теперь мы готовы приступить к работе с анимациями.

4)Часть 2 - Добавление "новых" анимации.
Если кто видел фильм "Храброе сердце", в последней битве хороший друг Уильяма вдохновил свое войско на битву бросив огромный меч Уильяма над полем. Если вы еще не видели фильм, вы можете увидеть здесь сцену полета этого меча над полем. Это действительно выглядит зрелищно и кроме того может серьезно ранить/убить врага (если попадет в него). Таким образом мы попытаемся создать нечто подобное, но конечно же это будет выглядеть несколько проще и не так зрелищно, вы сможете бросить много мечей подряд.

Отлично. Откройте "OpenBRF", перейдите в Файл> Открыть и откройте "uni_throws". Ухх, как много открытий в этом предложении. :) Так, теперь нажмите на "throw_javelin" и дублировать его (нажать правой кнопкой мыши). Переименуйте его (нажать правой кнопкой мыши еще раз) на "throw_braveheart". Перейти к Файл> Сохранить и выйдите из OpenBRF. Вот таким вот образом вы можете без проблем дублировать анимации. Если вы не продублируете и не переименуете анимацию, а просто создадите новую анимацию в строке module_animations.py, она перезапишется.

Однако если вы действительно хотите добавить совершенно новую анимацию, сделать ее с нуля, откройте "skeletons.brf" используя OpenBRF и экспортируйте сюда скелет "Nude" или перейдите в меню Tools > Edit Reference Data, щелкните на закладке Skeleton и нажмите на "Human" и экспортируйте его как "Nude". Используя SMD Importer экспортируйте этот "Nude" скелет в Blender или 3ds Max. При экспорте из Max'а не забудьте отметить его как "Sequence" вместо "Reference". Я не совсем знаю как это работает в Blender'е. В настоящее время экспортер OpenBRF несколько не завершен (OpenBRF все еще находится в стадии альфа версии), так что все кости кажутся не на своем месте, однако вы можете создавать новые анимации, сложность заключается только в том что вам будет труднее понять этот скелет нежели обычный. Тем не менее не следует сильно беспокоиться, OpenBRF импортер восстановит нормальное положение костей. Импортировать полученное достаточно легко, просто откройте существующий .brf файл (на данный момент создавать новый нет возможности) и перейдите в Import > Skeletal Animation.  Вот и все.
Короче говоря, посмотреть на старые уже существующие анимации дабы узнать сколько примерно кадров вам необходимо, экспортируйте Nude скелет без анимации, сделайте свою анимацию, импортируйте ее как анимацию скелета и посмотрите вашу новую анимацию!
Если вы хотите увидеть пример - скачайте этот файл. Не волнуйтесь, он в .AVI формате и поэтому не может содержать вирус. Это простая анимация показанная в OpenBRF которую я сделал только ради теста.

Хорошо, "новая" анимация настроена, мы можем двигаться дальше. Перейдите в ModuleSystem и откройте "module_animations.py", "header_items.py", и "module_items.py". Во-первых, мы будем править module_animations.py. Скопируйте "ready_javelin" и "release_javelin" примерно в 509 строку. Вставьте их (замените старые "unused_human_anims") в строку 1123. Убедитесь, что вы заменили старые анимации. Теперь переименуйте материал в _braveheart. Все должно выглядеть следующим образом:
Цитировать (выделенное)
["ready_braveheart", acf_rotate_body,
   [0.3, "throw_braveheart", 0, 30, blend_in_ready],
 ],
 ["release_braveheart", acf_rotate_body,
   [1.0, "throw_braveheart", 55, 100, arf_blend_in_0],
 ],

В принципе, это небольшой скрипт части "определения" анимации. Если вы посмотрите на первый скрипт вам сразу бросятся в глаза 4 основные вещи. "ready_braveheart" является первой, это ID анимации, который используется для привязки анимации. Следующим важным моментом является "acf_rotate_body", о значении которого легко догадаться. Он вращает тело. Следующим важным моментом является "throw_braveheart". Это название анимации ресурса/последовательности, а последний из них, "blend_in_ready", представляет собой строку, которая связывает эту анимацию с другими. Часть "0, 30" это счетчик кадров. Теперь вы знаете, все, что необходимо, и мы можем двигаться дальше.

Перейдите к header_items.py. Найдите "itcf_throw_javelin" и скопируйте все это в нижней части списка itcf_, прямо перед itc_cleaver. Переименуйте его в "itcf_throw_braveheart ". Если вы сделали все правильно, она должна выглядеть так:
Цитировать (выделенное)
itcf_force_64_bits                                   = 0x8000000000000000
itcf_throw_braveheart                                       = 0x0000000000040000
itc_cleaver


И сейчас мы должны сделать новый itc_. По сути, в моем понимании, itc_ (пункт возможностей) представляет собой перечень различных анимаций упакованых вместе. Если вы поместите itc_scimitar для вашей вещи, вы не сможете колоть/бить, поскольку itc_ не имеет itcf_thrust_onehanded. itcf_, опять же в моем понимании, необходим для связи с записью itc_. Итак, теперь у вас есть два выбора. Вы либо создаете новую itc_ или просто добавьте itcf_ в вашу вещь. Тем не менее, я предпочитаю использовать itc_ в любом случае, потому что тогда это выглядит чище и можно, если необходимо, добавить новые анимации на itc_ позже. Итак, давайте создадим новое itc_ под названием itc_braveheart под itc_greatlance. Если вы сделали все правильно, она должна выглядеть так:
Цитировать (выделенное)
itc_greatlance = itcf_thrust_onehanded_lance |itcf_thrust_onehanded_lance_horseback| itcf_thrust_polearm
itc_braveheart = itcf_force_64_bits | itcf_throw_braveheart
ixmesh_inventory   = 0x1000000000000000

    
Я не уверен на 100% зачем нужен itcf_force_64_bits, но большинство из itc_ похоже имеет его, и все отлично работает, так что пусть он будет и у нас. Чудесно. Теперь мы можем сохранить все это и перейти к module_items.py. В module_items.py просто скопируйте "practice_javelin" или другое подобное оружие, и вставьте его в самом конце, перед последним ']'. Если вы сделали все правильно, все должно выглядеть примерно так:
Цитировать (выделенное)
["rabati", "Rabati", [("rabati",0)], itp_type_head_armor   ,0, 278 , weight(2)|abundance(100)|head_armor(20)|body_armor(0)|leg_armor(0) ,imodbits_cloth ],
["braveheart_sword", "Braveheart Sword", [("b_bastard_sword",0),("b_bastard_sword", ixmesh_carry)], itp_type_thrown |itp_primary|itp_bonus_against_shield ,itc_braveheart|itcf_carry_quiver_back|itcf_show_holster_when_drawn, 0, weight(5) | spd_rtng(91) | shoot_speed(28) | thrust_damage(27, blunt) | max_ammo(50) | weapon_length(75), imodbits_thrown],
]

Как вы можете видеть, мы добавили itc_braveheart к этому пункту. Я также сохранили старые itcf_carry_quiver_back, просто чтобы показать, что вы можете иметь как itc_ так и itcf_ для одной вещи. Вы можете и должны добавить две itcf_ к itc_braveheart. Так он будет выглядеть намного чище. Хорошо. Теперь у вас в основном все готово, я надеюсь, я не забыл ничего важного. Теперь начинайте делать свои уникальные анимации! И не забудьте написать некоторые отзывы ...

Наслаждайтесь,
cdvader.

Критическое обновление (15/08/09) - Вы *не можете* создать совершенно новый .brf файл "с нуля" и разместить свою анимацию в нем, иначе вы получите ошибку RGL. Тем не менее, однако вы можете добавить вашу новую анимацию к уже существующему .brf файлу в папке CommonRes /, который имеет префикс ani_ и у вас не будет никаких RGL ошибок.
Я до сих пор не тестил, работают ли добавленные ani_ или uni_ .brf файлы в каком либо моде.

Credits.
Большое спасибо mtarini за Open-BRF.
И, конечно, огромноейшее спасибо Армагану за Mount & Blade!!!
  • Сообщений: 3992
  • За регистрацию на форуме не позже декабря 2011 года и не менее 3000 постов За активный вклад в развитие сайта
    • Просмотр профиля
0
« Ответ #22 : 17 Августа, 2009, 18:37 »
Предлагаю взглянуть на отличное видео http://www.youtube.com/watch?v=K9qAWkNBXMI , где видны наглядные примеры новой анимации (сделанной с помощью OpenBRF).
1 - обратите внимание на анимацию готовности к стрельбе;
2 - обратите внимание на нов. анимацию перезарядки ружья;
3(самое красивое) - анимацию штурмующей кавалерии, где всадники держат саблю вперед на вытянутой руке (на 1:28 секунде ролика).
  • Сообщений: 39421
  • За регистрацию на форуме не позже сентября 2008 года И создали они сайт...
    • Просмотр профиля
0
« Ответ #23 : 17 Августа, 2009, 19:29 »
Симпатично, еще бы ружья у них так не летали по руке. Интересно, а барабанщик в барабан бьет?
  • Ник в M&B: Sellsword
Привыкший сражаться не жнет и не пашет:
Хватает иных забот.
Налейте наемникам полные чаши!
Им завтра – снова в поход!
  • Сообщений: 1229
    • Просмотр профиля
0
« Ответ #24 : 17 Августа, 2009, 20:00 »
Чует мое сердце - до расчлененки и добиваний осталось недолго.
Всех милости просим на наш M&B Guild
"Неужели ты думаешь что мы не в курсе , будет всё как положено , не переживай , доверься нам и мы оправдаем твои ожидания" © ficus

СиЧЪ Total War СиЧЪ Total War
Сайт "Всадники Кальрадии" не является СМИ. Администрация не несет ответственность за высказывания и публикацию каких-либо материалов, сделанные любыми пользователями форума, в том числе посредством личных и публичных сообщений. Материалы, размещенные на ресурсе третьими лицами, могут содержать информацию, не предназначенную для лиц, не достигнувших совершеннолетия. При обнаружении на ресурсе материалов, нарушающих законодательство Российской Федерации, необходимо обращаться к администрации.
Сайт работает на быстром VPS/VDS хостинге от FASTVPS


Powered by SMF 2.0 | SMF © Simple Machines LLC