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 и экспорта моделей обратно в игру.
21 thoughts on “Converting 3d model from Star Craft 2”