Converting 3d model from Star Craft 2
Русский
Я подробно расскажу как конвертировать модели из игры Star Craft 2 с поддержкой костей. Интересно, что формат моделей *.m3 был расшифрован задолго до релиза игры, ещё когда игра находилась в глубокой стадии бета-теста. Остаётся надеятся, что формат будет не слишком изменён в следующих играх компании Blizzard.
Примечание:
Статья расчитана на пользователей знакомых с работой в 3ds Max и не описывает такие моменты как, например, текстурирование объектов, настройка материалов и т.п.
Для конвертирования потребуются следующие инструменты:
- 3ds Max (я использую 2008 х64)
- MPQEditor (программа для распаковки архивов игры) Автор: Ladislav Zezula [скачать] [страница]
- M3 Plugins v1.7 (скрипт для 3ds Max) Автор: NiNtoxicated [скачать] [страница]
1. Распаковка ресурсов. Ресурсы Star Craft 2 находятся в архивах с разными расширениями и бывают такими: *.SC2Assets, *.SC2Data. Однако это всего лишь переименованные *.mpq файлы. Открываются они программой MPQEditor. Все интересные архивы:
<путь установки>\StarCraft II\Mods\Liberty.SC2Mod\base.SC2Assets
<путь установки>\StarCraft II\Campaigns\Liberty.SC2Campaign\base.SC2Assets
Распаковываем оба архива в любое место. Если во время распаковки программа попросит заменить файлы — заменяем. После завершения процесса распаковки получим папку Assets со всеми ресурсами.
2. Конвертирование моделей. Модели находятся почти во всех папках. Текстуры в папке Texures. Для примера конвертирования я взял модель пехотинца. Во время конвертирования оказалось, что это Тайкус (не последний персонаж в игре). Для начала скопируем содержимое архива M3_Plugins_v1.7.zip в папку 3ds Max:
<путь установки>\Autodesk\3ds Max 2008\
Запускаем 3ds Max и открываем скрипт m3_import_v0.29.ms из:
<путь установки>\Autodesk\3ds Max 2008\Scripts\
командой MAXScript -> Run Script… Панель скрипта ищем в панели Utilities. Там запускаем MAXScript и в списке Utilities выбираем M3 — Import.После этого чуть ниже появится панель скрипта
Жмём на кнопку Open… и выбираем модель в формате *.m3. Для примера я использовал:
<путь распаковки>\Star Craft II\Assets\StoryModeCharacters\Terran\SM_Marine01\SM_Marine01.m3
Далее жмём кнопку Import. Время процесса импорта зависит от сложности модели и от количества использованных в модели костей, но не превышает минуты. После окончания процесса скрипт сообщит о затраченном на процесс времени, а в окне превью 3ds Max появится модельВ Star Craft 2 использован странный масштаб. Модели из внутреигровых роликов нужно увеличивать на 26000 по всем осям. Что я собственно и сделал.
3. Конвертирование текстур. Все текстуры находятся в одной папке, в уже упомянутой Textures. Формат текстур *.dds, в конвертировании не нуждаются. Если в 3ds Max в:
Configure User Paths -> External Files
указать путь к текстурам, то при импорте моделей текстуры будут автоматически присваиваться импортируемым объектам.
4. Визуализация. Для визуализации как всегда пользуюсь шейдерами для 3ds Max.5. А так же. В состав скриптов от NiNtoxicated входят инструменты для импорта анимации из Star Craft 2 и экспорта моделей обратно в игру.
8 thoughts on “Converting 3d model from Star Craft 2”
Не подскажешь как визуализировать модель поподробнее?
О какой визуализации идёт речь?
Здравствуйте!
Меня также интересует — как вы визуализируете модель с помощью шейдеров? Можете рассказать как это сделать, что бы добиться такого же эффекта как на картинке Тайкуса?
http://cgig.ru/2011/01/3ds-max-vis-shaders/
тут небольшой туториал
Ты не пробовал вскрыть библиотеку Starcraft 2: Heart of the Swarm?
Alex, пробовал, всё нормально открывается, но нужны новые плагины/скрипты.
У меня архив открылся другим MPQ эдитором, а вот сами модельки не вытаскиваются, ошибку пишет. Можешь ссылку дать на новый плагин? Я в гугле искал, но тот который нашел не работает 🙁
А как выдрать анимированные портреты юнитов?