Экспорт из Blender в разработке игр.
главная страница статьи файлы о сайте ссылки
Экспорт из Blender в разработке игр
Создание простой модели

Георгий Мошкин
tmtlib@narod.ru

Оглавление.

файлы по теме:

blender2006.zip (546 kb) - 3d модель, исходники экспортера для Blender и загрузчика на Delphi + exe
blender2006noexe.zip (351 kb) - всё то же, но без exe

Создадим простую 3D-сцену в Blender. Для этого скачайте с сайта http://www.blender.org/ бесплатный пакет 3D-моделирования Blender. С помощью этого редактора вы можете создать весь контент для своей игры: уровни, различные объекты, персонажи со скелетной анимацией и т.п..

1. Запустите Blender, на экране появится простенькая 3D сцена, состоящая из трёх объектов - кубика, источника света и камеры. Поместите курсор мыши над сценой и зажмите среднюю кнопку мыши. Подвигайте мышкой, не отпуская среднюю кнопку. Теперь вы знаете как вращать сцену. Если перед описанным выше процессом зажать клавиши Shift или Ctrl, то вы получите перемещение сцены или увеличение/уменьшение.

 

2. Ну вот, вы уже освоились с перемещением по 3D пространству. Перейдём к созданию модели. Так как мы занимаемся разработкой 3D игр, то неплохо было бы видеть куда направлены нормали. Сначала выделите кубик - наведите на него курсор и нажмите правую кнопку мыши. Затем перейдите в режим редактирования - для этого нажмите клавишу TAB. В нижней части экрана появится окошко с заголовком "Mesh Tools 1". Найдите в этом окошке кнопку "Draw Normals" и выделите её кликом мыши.

 

3. Повращайте сцену, зажав среднюю кнопку мыши: теперь из граней кубика торчат маленькие полосочки - это и есть нормали. Выберете удобное положение, когда хорошо видна объёмная форма кубика, как это показано на рисунке.

4. Сейчас кубик состоит из шести полигонов. Поделим полигоны кубика с помощью плоскости. Нажмите Ctrl+R и, двигая курсором мыши, выберите плоскость разделения (для тех, кто в курсе - это плоскость XY, XZ или ZY). Как только вы "поймаете" мышкой одну из плоскостей разделения, появится фиолетовая линия в местах пересечения этой плоскости с полигонами кубика:

 

5. Сделайте один клик левой кнопкой мыши. Теперь вы можете подвигать плоскость разделения поближе к одной из граней кубика:

 

6. Ещё раз кликните левой кнопкой мыши , чтобы зафиксировать результат. Нажмите на клавиатуре клавишу A, чтобы снять показанное желтым цветом выделение. Переключитесь в перспективную проекцию: включите Num Lock и нажмите клавишу 5 на "цифровой" части вашей клавиатуры (цифры со стрелками под Num Lock-ом). Перейдите в режим выделения граней. Для этого нажмите кнопку, на которой нарисован треугольник. Эта кнопка называется "Face select mode". Задержав курсор мыши над подобными кнопками вы всегда можете получить всплывающую подсказку о её назначении.

 

7. Выделите какую-нибудь из граней - наведите на неё курсор и нажмите правую кнопку мыши:

 

8. Теперь нажмите E и вытяните выделенный полигон из куба. Как только он вытянулся на нужное вам расстояние - жмите левую кнопку мыши. Линия, проходящая сквозь объект, показывает возможное направление, вдоль которого происходит вытягивание (Extrude). Обратите внимание, что когда вы нажимаете некоторые клавишы на клавиатуре, курсор мыши должен находится над соответствующим окном (в данном случае над окном со сценой, а не над окном с кнопками).

 

9. Повторяя шаг 7 и 8 вы можете создать весьма замысловатую модель. Тип отображения "Draw type" (Solid, Wireframe и т.п.) можно выбрать в меню, показанном на рисунке ниже. Я поделил один из четырёхугольных полигонов на два треугольника, чтобы протестировать это в своём экспортере. Для этого я выделил один полигон и нажмал Ctrl-T.

12. Наведите курсор мыши на правую границу окна Blender-а, где гаходится сцена. Вы увидите, что курсор мышки изменился. Как только это произошло, нажмите правую кнопку мыши. В появившемся меню выберите пунки "Split Area".

 

13. Затем нажмите среднюю кнопку мыши, и завершите разделение окна левой кнопкой мыши. У вас появится два одинаковых окна со сценой. Измените тип одного из этих окон на редактор текстурных координат: в левом нижнем углу окна нажмите на иконку типа окна и в появившемся меню "Window type" выберите "UV/Image Editor".

 

14. Выйдите из режима редактирования - для этого поместите курсор мышки над окошком со сценой и нажмите клавишу TAB. Загрузите несколько текстур: Image > Open > выберите нужный файл > Open Image. Откройте таким же образом ещё несколько текстур.

15. Перейдите в режим выбора граней ("фейсов"). Для этого проследите, чтобы курсор мышки был над сценой и просто нажмите клавишу F, что означает "UV Face Select". Выделение фейсов происходит аналогично тому, как это делалось при их редактировании: клавиша А для выделения или снятия выделения со всего сразу и правая кнопка мыши для выделения отдельных граней. Чтобы выделить несколько граней, зажимайте клавишу Shift и кликайте правой кнопкой мыши по нужным граням. Чтобы видеть сцену с наложением текстур включите режим прорисовки текстур: Draw type -> Textured.

16. Выберите всю сцену, понажимав клавишу A. Затем нажмите клавишу U и в появившемся меню выберите пункт "Standart 1/1". Также вы можете испробовать и другие пункты этого меню. Особо следует отметить пункт "From Window", который очень удобен в режиме параллельного проецирования, когда выделены лишь некоторые грани (переключение между параллельным и перспективным проецированием осуществляется клавишей 5 при включенном Num Lock; нужный вид выбирают клавишами 3,1,7) .

 

17. Для разнообразия выделите какой-нибудь один полигон с помощью правой кнопки мыши и задайте ему другую текстуру (в окне "UV/Image Editor" нажмите на иконку рядом с именем файла текущей текстуры и вы увидите список доступных текстур).

 

18. На забудьте записать полученную сцену в файл: File > Save as.

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

Все окна Blender-а (даже верхнее меню) имеют слева маленькю иконку. Если нажать на эту иконку, то сразу же появится меню "Window type", и вы можете сменить тип окна. Иногда удобно иметь два окна одниакового типа: например 3D View - в одном окне будет одно положение сцены, а в другом - другое. При наведении мышки на границы между окнами их можно "схватить" левым кликом мышки и потянуть. Если же на границе между окнами нажать правую кнопку мыши, то можно выбрать пункт меню Split и создавать новые окна. В окне со сценой удобно пользоваться средней кнопкой мыши: просто зажать её и подвигать мышкой для вращения сцены. Для масштабирования и параллельного перемещения нужно дополнительно к средней кнопке мыши зажать уже на клавиатуре Ctrl или Shift. Снять выделение со всех объектов позволяет двойное нажатие клавиши A. Если вы забыли какую кнопку нажимать - вы всегда можете вызвать специальное меню. Итак, помещате курсор мышки над 3D сценой и зажимаете правую кнопку мыши на несколько секунд - сразу появится обширное меню по добавлению новых объектов, выделению, редактированию и другим инструментам моделирования в Blender.

 Часть 2 >>