WarCraft 3: Magos' GMax Modelling Tutorial

» Раздел: Моделлинг

Автор: Magos
Перевод: exploder
Оригинал

Добро пожаловать в Magos' Modeling Tutorial

В этом руководстве я попытаюсь научить Вас как сделать модель, наложить текстуры, анимировать ее, добавить источники частиц и точки прикрепления, а затем импортировать в Warcraft 3. С того момента как Blizzard выпустила свой набор Art Tools, создание моделей стало проще. Однако этот набор подходит только для 3DStudio Max, который является профессиональным дорогостоящим инструментом (~3000$). Если Вы не хотите тратить столько денег для создания одной модели, Вы можете следовать данному руководству.
Я поделил это руководство на несколько частей:
  • Необходимые инструменты
  • Важные понятия
  • Создание простой модели
  • Текстурирование модели
  • Анимирование модели
  • Добавление источников частиц (Незакончено)
  • Добавление точек прикрепления
  • Импортирование модели в Warcraft 3
В конце каждой части есть список возможных ошибок. Постарайтесь избежать их.

Необходимые инструменты

Вам необходимы некоторые утилиты, чтобы начать моделировать. Здесь приведен возможный список утилит, конечно, Вы можете использовать и другие, которые Вам нравятся. Но эти утилиты я использовал лично и рекомендую Вам именно их. Помните, что если Вы используете другие утилиты, то данное руководство может быть бесполезным.
Gmax
Это программа для моделирования, и Вам необходимо ее иметь. Gmax это упрощенная версия 3D Studio Max, и абсолютно БЕСПЛАТНА. Вы можете получить ее с офицального сайта Discreet. Я также рекомендую прочитать руководства которые Вы получите вместе с программой. Я постараюсь изложить некоторые базовые принципы моделирования ниже.
Dex' Exporter script
После того как Вы закончите свою модель, Вы будете иметь *.gmax файл, который сильно отличается от MDL/MDX файлов, использованных в Warcraft 3. Вам нужно конвертировать Ваш файл, для этого Вам понадобится скрипт экспорта. Существует несколько подобных скриптов, но только при использовании Dex' Exporter script я получил хоть какие то результаты.
Yobgul's Mdl-Mdx File Converter
При использовании скрипта, Вы получите MDL файл. Однако, для того чтобы Warcraft 3 смог использовать Ваш файл, Вам необходимо сконвертировать его в MDX. В общем MDL и MDX файлы это одно и то же, но MDL – это текстовый формат, а MDX – бинарный. Вам необходимо конвертировать MDL в MDX перед импортом в Warcraft 3.
Графический редактор
Если Вам нужны хорошие текстуры, Вам потребуется графический редактор. Существует много подобных программ, например Photoshop, Paint Shop Pro или IrfanView. Если Вы используете другую программу, она должна должна поддерживать сохранение в формат TGA и альфа каналы.
Конвертер из BLP в TGA
Blizzard используют свой собственный формат изображений - Blizzard Pictures (*.blp). Существует множество программ для конвертирования из BLP в TGA, Wc3Viewer

Важные понятия

Здесь собраны несколько важных понятий, которые Вы должны знать, чтобы лучше понять, как делаются модели. Я буду использовать эти термины в руководстве, поэтому было бы хорошо, если выучили большинство из них.
Вершина
Вершина – это точка в трехмерном пространстве. Грубо говоря, вершины используются для создания формы Вашей модели.
Грань
Грань – это то что мы обычно «видим», смотря на модель. Это объект треугольной формы, углы которого образуются тремя вершинами. Почему треугольники? Потому что, треугольник – это самая маленькая геометрическая фигура, из которой могут быть построены другие фигуры.
Меш
Меш – это совокупность вершин и граней сформированных в объект некоторой формы. Это может быть куб, сфера или нечто сложное. Оба объекта на картинке – меши.
Отбрасывание невидимых граней (Backface culling)
Чтобы сократить время рендеринга, обратная сторона грани не рисуется. Почему? Потому что, она обычно направлена внутрь модели, и Вы все равно ее не увидите. Как упоминалось ранее, грань состоит из 3 вершин (назовем их v1, v2 и v3). Сторона грани видима, когда ее вершины расположены против часовой стрелки.
На рисунке, вершины левой грани расположены против часовой стрелки, поэтому грань видима (с нашей точки обзора). Вершины правой грани расположены по часовой стрелке, и мы не видим грань.
Эта информация важна только в том случае, если Вы делаете свою модель отдельными гранями. Если же Вы используете только примитивы (такие как сферы или параллелепипеды) для создания своей модели, то не задумывайтесь над этим.
Кость
Кости используются при анимации модели. Функции костей довольно похожи на функции настоящих костей. Кости скрепляются друг с другом в определенных местах и не могут быть разделены в последствии. Когда Вы двигаетесь, Ваши кости взаимодействуют друг с другом. Когда Вы поднимаете свою ногу, то ступня следует за ней и так далее. Итак, кости – это то, что Вы анимируете в процессе анимации. Каждая кость имеет прикрепленные к ней вершины модели, и таким образом модель тоже анимируется. В реальной жизни Вы можете видеть, как мышцы и кожа движутся вместе с костью, когда человек движется.
Помошник
Помошник тоже используются для анимации. Я никогда не использовал их, и поэтому я не могу объяснить их точного применения. Они выглядят как статические 3D точки (а кости – векторы). Помошники также используются как точки прикрепления. Далее я подробнее расскажу об этом.

Создание простой модели

Введение
Во-первых, я хочу дать Вам совет – сохраняйте Вашу модель чаще! Вам не захочется делать свою модель снова, если что-то пойдет не так. Если это большой проект, то делайте несколько различных версий, чтобы избежать ситуации, когда Вы по ошибке сохраняете испорченную модель. Резервные сохранения могут сильно сэкономить Ваше время.
Во-вторых, я предлагаю Вам прочитать документацию, поставляющуюся вместе с Gmax. Это поможет Вам научится базовым функциями, такими как навигация в 3D пространстве, создание базовых форм и так далее. Я упомяну некоторые базовые операции здесь.
И еще. В этом руководстве я буду ссылаться на некоторые панели инструментов. Чтобы убедится, что они все открыты у Вас, щелкните ПКМ на меню. В сплывающем меню должны быть отмечены пункты: Command Panel, Tab Panel и Main Toolbar.
Вращение/движение камеры
В нижнем правом углу есть несколько инструментов для навигации по сцене (Скриншот слева).
1 - Масштабирование
Различные инструменты для масштабирования. Я никогда не использовал их, поэтому Вам придется самим узнать, что они делают. Я считаю, что это будет не трудно.
2 – Поле видимости
Этот инструмент действует также как и масштабирование, однако вы не можете пройти сквозь объект если слишком сильно увеличиваете масштаб. Зажмите кнопку мыши и двигайте мышь вверх/вниз для масштабирования.
3 – Панорама
Это инструмент перемещает камеру. Зажмите кнопку и двигайте мышкой для перемещения камеры.
4 – Вращение
Этот инструмент вращает камеру. Нажмите кнопку. Должен появится круг. Наведите курсор мыши внутрь круга, зажмите левую клавишу и двигайте мышь для вращения камеры относительно точки. Подведите курсор мыши к краю круга, зажмите левую клавишу и двигайте мышь для поворота камеры вокруг линии взгляда.
5 – Максимизировать/минимизировать
Этот инструмент максимизирует выбранный вид.
Базовые объекты
В верхней части экрана Вы можете найти панель, изображенную на рисунке. Выберите объект и щелкните мышкой на любом из видов, для того чтобы расположить объект. Вы также можете сделать это с помощью главного меню: Create -> Standard Primitives. Также Вы можете выбрать объект из панели расположенной справа. В большинстве случаев, Вы будете должны выбрать размеры объекта, используя щелчок мышкой для подтверждения, и иногда даже больше одного раза (например: для параллелепипеда, Вам нужно выбрать ширину и высоту, сделать клик, а затем выбрать длинну).
Если Вы используете стандартные примитивы, не забывайте конвертировать их в editable mesh, перед экспортом в MDL. Это можно сделать, щелкнув правой клавишей мышки на объект и выбрав Convert to editable mesh.
Но надо заметить, что после того как вы конвертируете объект в editable mesh, вы не сможете редактировать его также как, когда он был параллелепипедом или сферой (т.е. не сможете изменить радиус или количество сегментов).
Редактирование меша
Если конвертируете объект в editable mesh, вы получаете больший контроль над его формой. Два наиболее распространенных метода редактирование меша, это редактирование вершин и граней. После того как Вы конвертируете объект в editable mesh, выберете Editable Mesh из набора модификаторов справа, и выберете метод редактирования, который Вы хотите использовать.
Редактирование вершин
Редактирование вершин позволяет Вам двигать отдельные вершины, удалять их, добавлять новые и т.д. Вы можете выбрать любую вершину, кликнув на синей точке (представляющей вершину). Действия для редактирования Вы можете найти в главной панели инструментов сверху. Редактирование вершин часто используют для создания более сложного объекта из более простого.
Редактирование граней
Редактирование граней позволяет Вам изменять грани меша, удалять их или добавлять. Вы можете совершать над ними такие же действия как и над вершинами.
В завершение
Во время создания модели, всегда лучше сохранять число граней небольшим. Если Вы не будете придерживаться этого правила, то неизбежны лаги в игре, когда на экране будет отображаться много моделей. Попытайтесь избежать большой детализации моделей. Пусть мелкие детали будут сделаны текстурой, а не геометрией. Изучайте модели других людей (Blizzard), чтобы увидеть как они решили эту проблему, и используйте их способы уменьшения числа граней.
Возможные ошибки
Editable mesh
Убедитесь что все части Вашей модели конвертированы в editable mesh. Если они не конвертированы, то они не включатся в финальную модель. Если какие то части модели не отображаются во время тестов в Warcraft 3, то в 99% случаев это объясняется тем, что Вы забыли конвертировать их в editable mesh.
Хей, моя модель вывернута наизнанку
Этот странный баг обычно объясняется тем, что Вы использовали mirror для зеркального отображения меша. НЕ используйте mirror. К счастью эффект может быть устранен еще одним зеркальным отображением меша.
Вместо зеркального отображения используйте вращение или создайте новый меш.

Текстурирование модели

Редактор материалов
Вот мы и добрались до текстурирования. Во-первых, Вам необходимо сделать текстуру. Здесь я не буду давать Вам советы. Если Вы нуждаетесь в помощи при изготовлении текстур, посмотрите оригинальные текстуры Warcraft или поищите информацию на форумах.
Для текстурирования я выбрал простейший объект – куб.
Для начала Вам нужно назначить текстуру Вашей модели. Откройте редактор материалов, нажав кнопку в верхней части экрана.
Вы вошли в редактор материалов. Слева должен быть набор опций Browse From. Выберите File System, затем найдите файл с Вашей текстурой в появившемся дереве каталогов. Все это должно выглядеть примерно так как на скриншоте.
Расположите окно так, чтобы Вы могли видеть и выбранной Вами изображение и Вашу модель. Затем просто перетащите изображение из редактора
материалов на Вашу модель. Текстура наложится на Вашу модель. Если Вы хотите, чтобы одна и та же текстура была наложена на несколько мешей, то для начала перетащите ее на любой из этих мешей. Затем найдите в редакторе материалов материал с Вашей текстурой и перетащите его на все остальные меши. Если же Вы перетащите одну и ту текстуру из дерева каталогов на все меши отдельно, то для каждого из них создастся отдельный материал, что будет слишком расточительно. Вы можете посмотреть на Вашу модель, и увидеть какая часть протекстурировалась, а какая – нет. В моем примере, я перетащил текстуру ельфийки на куб. Сечас это выглядит так:
UVW Unwrapping
То что получилось в данный момент, не то что нам нужно. На каждой стороне куба расположился отдельный рисунок. Сейчас мы сделаем так, чтобы на каждой стороне куба расположилась лишь часть изображения. Это и называется UVW Unwrapping. Каждая вершина имеет свою текстурную координату, которая показывает, где данная вершина расположена на текстуре. U и V ни что иное как координаты X и Y. W никогда не используется. Текстурные координаты представлены в процентах, это значит что точка с координатами 0,0 – верхний левый угол, а с 1,1 – нижний правый угол.
Сейчас выберете модель и перейдите к списку модификаторов (в правой части экрана). Листайте вниз, пока не найдете раздел UVW Coordinate Modifiers. Выберете Unwrap UVW.
Сейчас у Вас есть модификатор Unwrap UVW. Откройте список модификатора, нажав +, и выберете Select face. Затем нажмите Edit, как это показано на рисунке:
Откроется окно, содержащее изображение текстуры и вершины выбранного Вами меша. Сейчас просто передвигайте вершины, пока они не займут нужного положения.
(далее идет нецензурный комментарий автора на счет качества скриншота, и его недоумение о причине этого)
Этот этап может быть немного трудным, т.к. трудно выделить нужную вершину, когда несколько вершин лежат друг на друге, или когда меш содержит очень много граней. Вы можете увидеть все изменения, происходящие с моделью, в виде «Перспектива». Также имеется кнопка в правой части окна, называемая Texture snap. Она поможет Вам лучше выровнять вершины.
Другая полезная особенность это Filter Selected Vertices, которая может быть включена при нажатии на кнопку с изображением треугольника в нижней части экрана. Когда она включена, отображаются вершины только выделенных граней. Выделите грань на 3D виде, затем редактируйте ее в окне UVW. Заметьте, что несколько граней могут иметь общие вершины.
Для примера я расположил глаз эльфийки на одной из сторон куба. Перетащите нужные вершины (может оказаться трудным выделит их) и расположите их в форме прямоугольника вокруг глаза. Текстура может оказаться зеркально отображенной или перевернутой, но это можно исправить перестановкой соответствующих вершин. Вы также можете, нажав правую кнопку мыши, выбрать Rotate(вращение) или Scale(масштаб) операции вместо операции Move, которая установлена по умолчанию. Только не забудьте выделить несколько вершин, перед тем как выполнять эти операции ^^.
Если Вы испортите UVW текстурирование (это случится, поверьте мне ^^), не отчаивайтесь. Undo - ваш друг. Если же Вы испортите все окончательно, просто выделите UVW модификатор в списке, нажмите на нем правой кнопкой мыши и удалите. Затем повторите все предыдущие шаги.
Создание текстуры
Хотя модель с текстурами выглядит хорошо в Gmax, это может быть не так в игре, если Вы не сделали текстуру правильно. Начните с того, что конвертируйте изображение, которое Вы использовали для текстурирования в Gmax, в формат TGA, используя любой, выбранный Вами, графический редактор. Далее не забудьте добавить альфа канал, иначе текстура может не отображаться в игре.
Когда Вы получите TGA файл, конвертируйте его в формат BLP, любым, выбранным Вами, конвертером TGA>BLP.
Возможные ошибки
Альфа каналы
Проверьте, не забыли ли Вы добавить альфа канал, когда делали файл с текстурой.

Просмотров: 14 076

hob_Beast #1 - 11 лет назад 1
Мануал классный, спасибо exploder'у за перевод!
Но почему кода я щёлкаю на ссылку с Dex' Exporter script файл не скачивается,а открывается эта же страница.
И для чего нужен gmax Modeling Pack.zip , чем как пользоватся?
Да и ещё бы плагинов для gmax'а...
Seth Rose #2 - 11 лет назад 1
Круто!!!!!!!!!!
Doberman341 #3 - 11 лет назад 1
Да-а-а-а! Неплохо! Но где 2-я часть статьи?
Terenas #4 - 11 лет назад 1
да где 2 часть
FEARSTARTER #5 - 10 лет назад 1
экспортер здесь не скачивается а в енете я его не нашол напиши ссыль
KoliaZP #6 - 9 лет назад 1
Очень хочется услышать продолжение!!!
KoliaZP #7 - 9 лет назад 1
Я сомневаюсь, шо кто-то покупает 3ds max (для дома) за ~3000$, скорей всего идут на бижайший рынок, и покупают диск за 10-15 грн.
MooNFish #8 - 8 лет назад 2
Dex Exporter есть здесь:
[url]http://world-editor-tutorials.thehelper.net/filestools.php[/url]
Помимо файла gmax Modeling Pack.zip )))