IPB

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Reply to this topicStart new topic
> Извлечение моделей из Age of Mythology, анимация монстров, здания
Etoprostoya
сообщение 25 Jan 2010, 18:31 (Сообщение отредактировал etoprostoya - 20 Jun 2010, 08:50)
Сообщение #1

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Итак, конвертируем 3D-модели из Age of Mythology в 2D.

1. Что для этого нужно:
а) BARExplorer - открывает архив с моделями и текстурами.
б) AoMEd - конвертирует модели и текстуры в удобный нам формат (3DS для моделей и TGA для текстур).
в) 3DS MAX (далее просто Макс) - известно для чего smile.gif . Для редактирования и получения нужных нам 2D-спрайтов анимации.
г) скрипт для разделения анимации в 3D-модели по кадрам.
д) Установленная игра Age of Mythology, можно с аддоном Titans.

2. Начинаем. Нам нужно распаковать архив с моделями.
a) Запускаем программу BARExplorer.
б) Открываем в папке с игрой папку \models\, а в ней выбираем файл models.bar (или models2.bar если нужна графика из аддона).
в) В меню Options указываем папку, куда распаковываем модели (можно не указывать, но потом постоянно будет спрашивать).
г) Выбираем либо один файл, который хотим извлечь, либо извлекаем всё (рекомендуется) через меню Edit.

Отмечу, что все нужные нам модели юнитов и зданий имеют расширение *.BRG (есть и модели *.GRN, но о них особый разговор).
Название каждого файла имеет смысл и очень часто легко понимается. Например, файл "world n pine e.brg" - модель сосны.
"special g carcinos_deatha.brg" - модель гибели спец. юнита Карцинос (огромный омар).
"animal elephant_attacka.brg" - модель атакующего дикого слона.
"lp building g marketage2.brg" - наверное, модель рынка и т.п.
Ещё один пример - модель дракона Nidhogg - её полноценная анимация содержится в нескольких файлах:
sfx n nidhogg_attacka.brg - атака
sfx n nidhogg_birtha.brg - появление (этот дракон вызывается (summon))
sfx n nidhogg_deatha.brg - гибель
sfx n nidhogg_flaila.brg - полёт - премежуток между атаками
sfx n nidhogg_idlea.brg - полёт-бездействие
sfx n nidhogg_walka.brg - полёт-перемещение

3. Конвертация в 3DS MAX-модель
а) Открываем AoMEd -> жмём на кнопку "Direct file conversion" -> выбираем и открываем файл, который мы хотим конвертировать ->
-> Если всё правильно, выбираем имя файла 3DS в который сохраняем ->
-> выбираем архив с текстурами textures\textures.bar. Иногда нужно прописывать полный путь!
Если появилось сообщение "Completed", то всё прошло успешно и можно двигаться дальше в п.4.
Если нет, значит, вы сделали что-то не так (чаще всего) или программа не смогла обработать нужные файлы (редко, но бывает).

Итак, нужная нам модель и текстуры к ней извлечены и теперь остаётся работа с Максом. Поскольку я, как и многие ругие, не сильный знаток Макса, прошу не пинать за стиль изложения тех, кто считает себя знатоком Макса. Я постарался изложить всё так, чтобы даже ни разу не открывавший эту программу пользователь смог получить то, что заявлено в сабже.

4. Подготовка модели в Максе. В папке «Scripts» каталога Макса уже должен лежать наш скрипт «import_gmax». (в настройках Макса нужно указать где лежат наши извлечённые модели и текстуры: в меню «Customize\Configure User Path…» на вкладке External Files добавляем наш каталог)
А) Открываем Макс и через меню «File\Import…» открываем, например, модель «special n valkyrie_walka».
Б) В появившемся диалоге выбираем «Completely replace…» и «Convert unit». OK. Появляется что-то непонятное.
В) Это что-то обрабатываем так. Меню «MAXScript\Run Script…». Выбираем «import_gmax» и запускаем его. Всё, модель нормальная, с анимацией, и с ней можно работать. Дальше опытным пользователям Макса можно не читать.

5. Создание анимации в Максе.
А) Устанавливаем нормальное положение. Например, выбираем меню «Edit\Rotate», щёлкаем мышью на нашей модели и в нижней панели ставим около «Z:» значение «35.0» (здесь возможны другие варианты).
Б) Меню «Rendering\Environment…», выбираем цвет фона для анимации «Background\Color» (здесь я поставил белый цвет).
В) Меню «Rendering\Render», «Time Output\Active Time Segment», «Output Size\Width» 450, «Height» 400, «Render Output» - выбираем название для спрайтов, тип BMP, нажимаем «Сохранить», выбираем RGB 24-bit. Жмём на «Render», наблюдаем и ждём. Всё, ищём спрайты там где сохранились.

Вот пример того, что получилось у меня в процессе написания этой инструкции.


AoMEd, BARExplorer, import_gmax.ms можно скачать отсюда
letitbit.net/download/7605.726bccc27ccd7b8a6c98620d1/aom.zip.html

Скрипты: http://slil.ru/29362809


--------------------
- Да ну!?
- Horn of the Argali гну!


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Jeanstonik
сообщение 25 Jan 2010, 18:38
Сообщение #2

Касторицист
Сообщений: 1 746
Спасибо сказали: 211 раз




Обидноhuh.gif у мя на компе макс не хочет пахать...
А модельки не плохие то получаются... угловатые мальца... ну в общем неплохо.


--------------------
Азен?
@
Не, не слышал
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 25 Jan 2010, 18:46 (Сообщение отредактировал etoprostoya - 25 Jan 2010, 20:58)
Сообщение #3

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Забыл сказать, что летающий дракон у меня в подписи и есть Nidhogg, который упомянут в статье.

P.S.


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Alex-ander
сообщение 25 Jan 2010, 22:44
Сообщение #4

Immortal
Сообщений: 2 949
Спасибо сказали: 1560 раз




может, ситуацию с угловатостью мальца поправит банальный MeshSmooth? Или, если сильно слишком сгладит - наложить предварительно Subdivide?


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 25 Jan 2010, 22:47 (Сообщение отредактировал etoprostoya - 25 Jan 2010, 23:37)
Сообщение #5

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Цитата(Alex-ander @ 25 Jan 2010, 22:44)
может, ситуацию с угловатостью мальца поправит банальный MeshSmooth? Или, если сильно слишком сгладит - наложить предварительно Subdivide?

Я вот из этого ничего не понял. smile.gif Это поможет исправить ситуацию с малым количеством полигонов в модели (из-за этого ведь угловатость)?

P.S. Понял. MeshSmooth


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Alex-ander
сообщение 26 Jan 2010, 12:53 (Сообщение отредактировал Alex-ander - 26 Jan 2010, 12:51)
Сообщение #6

Immortal
Сообщений: 2 949
Спасибо сказали: 1560 раз




Иногда так приятно похалявить... rolleyes.gif



Поставил свет + немного поигрался с материалами + ну и Subdivide + MeshSmooth( предварительно склеив лишние вершинки).

Добавлено ([mergetime]1264499580[/mergetime]):
Не знаю - откуда взялся портак на руке...может из-за того, что радиус "склеивания" вершинок слишком большой задал...


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 26 Jan 2010, 12:53
Сообщение #7

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Это из Age of Mythology? Тролль?
Я вот никак склеить вершины не смог. Впрочем я новичок в Максе.

Текстуры можно увеличивать в 2, 4, 8 раз и детализировать.


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Alex-ander
сообщение 26 Jan 2010, 12:57 (Сообщение отредактировал Alex-ander - 26 Jan 2010, 13:21)
Сообщение #8

Immortal
Сообщений: 2 949
Спасибо сказали: 1560 раз




Цитата
Это из Age of Mythology? Тролль?

он самый (Титан который). там только они (Титаны) более-менее детализированные.

вершины склеивать - просто. выделяешь объект. справа - раскрываешь свиток "editable mesh". Выбираешь красненькие точечки (редактирование на уровне вершин). Выделяешь все вершины и ищешь справа в свитке - "Weld". Задай там радиус обхвата 0,01 (я задал 0,1 - наверное поэтому и портак) и жмешь Selected.


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 26 Jan 2010, 13:14
Сообщение #9

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Обработал вершины. smile.gif Гораздо лучше стало.



Добавлено ([mergetime]1264500874[/mergetime]):
Для сравнения - старый.


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Alex-ander
сообщение 26 Jan 2010, 13:19
Сообщение #10

Immortal
Сообщений: 2 949
Спасибо сказали: 1560 раз




Под ухом дырка осталась lupa.gif


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 26 Jan 2010, 13:21
Сообщение #11

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




smile.gif И хвост отклеился. Наездник похудел. laugh.gif


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Alex-ander
сообщение 26 Jan 2010, 13:23
Сообщение #12

Immortal
Сообщений: 2 949
Спасибо сказали: 1560 раз




Надо перед MeshSmooth - Subdivide поставить с 0.5 .
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 26 Jan 2010, 13:36
Сообщение #13

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз





Всё равно есть проблемы. sad.gif


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 26 Jan 2010, 13:48
Сообщение #14

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




Цитата(cерый @ 26 Jan 2010, 13:38)
остается старая проблема, несоразмерность самого наездника с другими людьми на поле боя

Наездника можно немного "расширить". Хотя я и не собирался делать его модель для Героев - 1) слишком нетипичный; 2) слоны в Бастионе. Это просто пример извлечения из Эпохи Мифов.


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Jeanstonik
сообщение 27 Jan 2010, 21:18
Сообщение #15

Касторицист
Сообщений: 1 746
Спасибо сказали: 211 раз




ура! мне удалось установить макс! Попробовал притырить крича... ну чет пока не очень прально получилось... анимация корявая... да и моделька... Ну ничего, разберемсяlaugh.gif Так что ждите! Йа Иду!


--------------------
Азен?
@
Не, не слышал
Go to the top of the pageAdd Nick
 
+Quote Post
Jeanstonik
сообщение 27 Jan 2010, 21:44
Сообщение #16

Касторицист
Сообщений: 1 746
Спасибо сказали: 211 раз




Не нашел правда я такого: Edit\Rotate
Ну меню эдит конечно нашел, а вот Ротат в нем не нашел. huh.gif
У меня макс 8-ой


--------------------
Азен?
@
Не, не слышал
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 27 Jan 2010, 21:48
Сообщение #17

Etoslozhnostatus
Сообщений: 8 594
Спасибо сказали: 16009 раз




У тебя русский или английский язык в Максе?


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Mugaisa
сообщение 27 Jan 2010, 21:55
Сообщение #18

Immortal
Сообщений: 6 245
Спасибо сказали: 7075 раз




А из Rise of Nations извлекать не пробовали?


--------------------
Cyberpunk not dead!


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 27 Jan 2010, 21:57
Сообщение #19

😸🧡✊✌️
Сообщений: 16 419
Спасибо сказали: 3286 раз




Rotate - Вращать. Так-то.


--------------------
Я слежу за тобой!
* tolic.narod.ru

Цитата
Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел.
Борис "Бонус" Репетур, "От винта!", выпуск 38.
Go to the top of the pageAdd Nick
 
+Quote Post
Jeanstonik
сообщение 27 Jan 2010, 22:03
Сообщение #20

Касторицист
Сообщений: 1 746
Спасибо сказали: 211 раз




английский максимка у меняlaugh.gif

Кста, у мя там даж чет получается мальца... но вот выставить норм не могу.... и ещё проблемка... например я хотел вытащить ледяного гиганта, а у него модель головы отдельно, модель туловища отдульно. Вопрос: Что делать, епт!

Кста, скрипт бывает не работает с некоторыми моделями!


--------------------
Азен?
@
Не, не слышал
Go to the top of the pageAdd Nick
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 7 September 2025 - 03:21
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика