Меню Сайта
Главная
Чат
__________________
Naruto TV-1
Naruto TV-2 Shipudenn
Naruto MOVIE-3
Naruto MOVIE-4
Naruto Приколы-Online
____________________
Windows XP
Linux
Vista
_______________
Games
3D_Модели
Програмы нужные Для Создания ИГР
ГАЛЕРЕЯ СКРИНШОТОВ из УРОКОВ
_______________________
--Blitz3D для начинающих---
Первая комната Blitz3d---
--Основы Cоздания Cетевых Игр---
Создание чата---
--Спрайты и Tекстуры---
Моделирование---
--Создание Серьезных Уровней---
Создание Kосмической Aркады---
--Звук, музыка и Интерфейс---
Создание основ Pолевой Игры---
--Простейший First-Person Шутер---
--Пиктограмма exe-файла---
___________________
Обои для Рабочего Стола
_________________
Раздел Банеров
Друзья-Сайта
Аниация и кправление камерой---
Redact
 

ToP Sites http://mo3del.ru/ http://mir3d.3dn.ru/ http://sw-in.narod.ru/

Моделирование---

 
 

Урок 5. Моделирование

5.1.  Редактор MilkShape3D.

     По теме создания моделей написаны многочисленные книги, но все они, в большинстве своем касаются сложного моделирования в таких мощных пакетах трехмерной графики как
3D Studio MAX, Maya и им подобным. Мы же с Вами кратко рассмотрим редактор моделей, который создан для разработчиков Quake-подобных игр - MilkShape3D, который очень легок в освоении. Сразу оговорюсь, что более-менее профессионально выглядящие модели может создавать лишь человек у которого есть склонности к дизайну и конечно художественный вкус. Наша цель не привить Вам эту склонность, мы лишь покажем принципы создания и анимации моделей для игр.
     Для начала Вам необходимо обзавестись одной из версий редактора
MilkShape3D для чего посетите домашнюю страницу разработчика: http://www.milkshape3d.com и зайдите в секцию "download" откуда можно скачать последнюю версию программы. Вы можете взять этот редактор и из других источников, оставляем это на Ваше усмотрение. Установка не должна вызвать у Вас затруднений. После запуска программы видим следующий экран:


Рабочее поле редактора разбито на 4 зоны - три проекции и трехмерный вид (синий фон). Геометрические примитивы и некоторые функции вынесены в раздел
Tools в правой части программы. Также там видны вкладки Model, Groups, Materials, Joints.
Давайте пробежимся по кнопкам раздела
Tools  вкладки Model и бегло ознакомимся, что же нам позволяет сделать этот редактор в части создания полигональных моделей.

Копка
Select - позволяет выделять часть или всю модель на одном из экранов проекций для дальнейших модификаций другими командами редактора. Выбрав кнопку Select мы видим как ниже ряда всех кнопок панели Model появляется дополнительный раздел, который касается только этой команды (Select ):


Кнопки
Vertex, Face, Group, Joint - позволяют выделять наш объект (модель) разными способами: по вертексам (т.е. только точки вершин), по граням и точкам, по группам и выделять скелетные кости модели, соответственно.
Рассмотрим пример:

Нажмите кнопку сфера (
Sphere) в разделе Tools:


и мышью в одном из окон проекций нарисуйте две сферы:



Вы сразу заметили как в окне трехмерного вида отобразится
3D проекция ваших сфер. Попробуем применить к ним разные схемы выделения.
Для выделения по вертексам (нажмите
Select, внизу в  Select Options выберите Vertex) попробуйте выделить часть верхней сферы прижав и растянув кнопкой мыши квадратик (зону выделения) в одном из окон проекции. Должно получиться следующее:



Видно, что выделение происходит по точкам вершинам. При выделении по вертексам можно добиться более точного морфинга сложных частей модели.
Для выделения по граням и точкам (нажмите
Select, внизу в  Select Options выберите Face) и снова повторите процедуру выделения объекта.  Должно получиться следующее:



Здесь выделены грани полигонов.
Для выделения групп, то есть всех геометрических элементов модели (нажмите
Select, внизу в  Select Options выберите Group) и попробуйте пощелкать по нашим сферам.
 
Вы видите что выделяются группы, которые по сути являются нашими сферами

В дальнейшем мы научимся манипулировать группами, соединять разные объекты в одну группу и т.д.

Кнопка
Move позволяет перемещать выделенные фрагменты модели: Выделите часть нашей сферы командой Select и нажмите кнопку Move после чего попробуйте смещать прижатый курсор мыши в одном из окон проекции модели. Видим следующее:



Если у Вас стояло выделение по группе, то сместится вся группа, то есть одна из сфер.

Кнопка
Rotate применяется для вращения выделенной части модели, всей модели или группы на некоторый угол. Выделите часть нашей сферы командой Select и нажмите кнопку Rotate после чего попробуйте смещать прижатый курсор мыши в одном из окон проекции модели. На экране произойдут следующие изменения:


Кнопка
Scale применяется для масштабирования  выделенной части модели, всей выделенной модели или одной из групп входящих в модель.  Для команды Scale доступны следующие подфункции: масштабирование возможно производить из точки центра масс выделенной части, из центральной точки всего объекта и точки последнего щелчка мыши.



Выделите часть нашей сферы командой
Select и нажмите кнопку Scale  после чего попробуйте смещать прижатый курсор мыши в одном из окон проекции модели. На экране произойдут следующие изменения:



Вы можете более точно масштабировать выделенную часть модели указав коэффициент масштаба по координатам
X,Y,Z либо по одной из них или нескольким из них.

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



А на трехмерном виде, вы увидите полноценный полигон, который Вы сами создали при помощи вышеописанных инструментов. Этот подход можно применить в тех участках модели, где очень сложно использовать другие геометрические фигуры, а нужно ручное моделирование буквально с нуля.

Мы уже рассматривали инструмент
Sphere чуть выше и вы знаете как с ней работать. Заметим только что вы можете изменять количество меридианов ее составляющих, то есть изменять степень ее сглаженности. GeoSphere похожа на сферу, но отличается только одним параметром - глубина (depth).

Кнопка
Box - позволяет создавать кубические фигуры.
Кнопка
Cylinder - позволяет создавать цилиндрические формы и степень ее сглаженности регулируются параметрами - Stacks и Slices, см. рисунок:



Галочка "
Close Cylinder" определяет, будет ли у нас закрытый цилиндр или открытый в виде трубы:




Кнопка
Extrude - поможет нам наращивать целые формы, вытягивая их из уже готовых объектов. Для примера, создайте объект сферы и пометьте ее часть, как показано на следующем рисунке:



Теперь нажмите кнопку
Extrude и смещайте указатель мыши вниз в одной из проекций. Получаем что-то подобное. Заодно посмотрим как это выглядит в трехмерной проекции:

На повестке дня из всех кнопок раздела Tools, у нас осталась кнопка Joint. Это не что иное как кость. Без костей не будет анимации нашего персонажа. Потому нажимаем на эту кнопку и добавим кость к нашему последнему объекту, по разу щелкнув у его основания и вершины:



В дальнейшем мы рассмотрим как осуществлять привязки наших моделей, а вернее их частей к костям для дальнейшей анимации.

А пока что перейдем на вкладку
Groups.
Этот раздел нужен для организации Вашей модели в виде составных частей. Например для
модели солдата, несколько частей в списке групп выглядят таким образом:



Кнопка
Select служит для выделения целой группы из списка групп, либо снятия этого выделения при повторном щелчке.
Кнопка
Hide - позволяет спрятать группу, если она в данный момент Вам мешает при модификации другой группы, закрывая ее.
Кнопка
Delete - предназначена для удаления группы, если вы посчитали нужным, что она Вам больше не нужна.
Кнопка
Regroup - поможет Вам сгруппировать несколько выделенных групп в одну, а кнопка Rename - присвоить группе другое имя. Например для группы отвечающей за голову персонажа, больше подойдет название "Head", а не "Group1", так как несет большую смысловую нагрузку.
Smoothing Groups - служат как хранилища для групп полигонов. Назначение групп полигонов для номеров, с помощью кнопки Assign сглаживает эти участки. Кнопка Clear All - отменяет все сглаживания. Поэкспериментируйте с этими кнопками и увидите эффекты, которые они позволяют создавать для выделенных групп моделей.

Следующим нашим шагом будет вкладка
Materials:

Эта вкладка позволяет загружать файл с текстурой для данной модели. Для создания нового материала служит кнопка New - после чего в список материалов добавится очередное имя материала со своим порядковым номером, к примеру Material1. Затем если мы нажмем на кнопку <none> то откроется окно выбора файла текстуры и после того как мы нажмем на нужный нам файл, он загрузится в редактор для дальнейшего использования.
Кнопки
Ambient, Diffuse, Specular, Emissive - предназначены для цветовых эффектов и различных подсветок модели внутри самого редактора. Таким образом мы можем назначать разным группам моделей различные цвета, для более наглядного представления их на этапе моделирования.
Чтоб назначить группе определенный материал, вернитесь на вкладку
Groups и выделите группу с помощью вкладки Select. Затем снова перейдите на вкладку Materials и нажмите кнопку Assign. Таким образом материал будет закреплен за выбранной группой. Далее можно будет приступать к уже более конкретному текстурированию, что мы рассмотрим в следующих пунктах нашего урока.

Итак, у нас осталась самая последняя вкладка, а именно: Joints. Без этой вкладки мы не можем манипулировать скелетом нашего персонажа и назначать его кости различным частям его туловища. Ее работу мы рассмотрим в следующем пункте.

5.2.
 Основы создания персонажей.

     Давайте для примера создадим очень простой персонаж для детской игры. Это даст Вам основы проектирования персонажа и принципы его анимации и послужит трамплином для создания более сложных персонажей для профессиональных игр.
     Открываем уже более-менее известный нам редактор
MilkShape3D и начинаем создавать наш "шедевр".
     Для начала создайте сферу - это будет голова нашего персонажа, затем создайте более маленькую сферу, это будет ухо и примените к нему масштаб (кнопка
Scale) , но так чтоб ухо было сплюснуто только с одной стороны, Затем нажмите комбинацию клавиш Control+D или выберите из верхнего меню пункт Edit -> Duplicate Selection и потом нажав кнопку Move перенесите второе продублированное ухо чуть поодаль. Затем соберите голову и уши, как это показано на нашем рисунке.



Теперь просто необходимо добавить нашему персонажу ноги. Думается кнопка
Cylinder как нельзя более подойдет для этого случая. Кроме того на ноги персонажа наденем тапочки из половинок уже знакомых нам сфер. Чтоб отрезать половинку сферы, пометьте ее часть  (кнопка Select) и нажмите Delete на клавиатуре. Итак, наша нога:



Отчетливо заметно, что наша выделенная нога состоит из цилиндра и половины сферы.
Вероятно в группах появились названия цилиндра и сферы с соответствующим порядковым номером. Сгруппируйте эту полусферу и цилиндр в одну группу. Пометьте их обе (
Select) и нажмите Regroup.
Теперь продублируем нашу ногу (
Control+D) и переместим их поближе к туловищу (Move).
Если следовали нашему алгоритму, то наш персонаж обзавелся ножками:

 

 проекция                                             3-х мерный вид

Безусловно сейчас можно было бы добавить руки, пальцы, но думаю, что на это нет нужды тратить время, если вы хотите, можете сделать руки из тех же цилиндров или объекта
Box.
Чтоб избежать путанице, присвойте группам понятные наименования при помощи кнопки
Rename:




Следующим  шагом добавим скелет.
 

5.3.  Внедрение скелета в модель.

     За создание костей будущего скелета нашей модели отвечает кнопка
Joint в разделе Tools самой первой вкладки Model.
Теперь начинаем рисовать наш скелет, от тела модели к левой ноге. Следуйте рисунку ниже. Нажимайте мышкой в тех местах модели на проекции, как это показано на рисунке, начиная от цифры 1 заканчивая цифрой 4.

После этой операции у нас должны появиться три кости. Теперь выберите кнопку Select и кнопку Joint (в панели Select Options) для того чтоб указать начало отрисовки костей нашей второй ноги.



Пометьте срединное сочленение костей, как это сделано на рисунке чуть ниже, так что у Вас выделится вся левая нога:


И заканчиваем со второй ногой, щелкая в точках, помеченных цифрами 1 и 2:


Итак результатом наших с Вам трудов, стал скелет нашего игрушечного персонажа. Если вы теперь посмотрите на вкладку
Joints редактора, то заметите что в списке соединений (сочленений между костями) у нас присутствуют 6 наименований начиная от joint1 и заканчивая joint 6. Если у нас 6 сочленений, то костей у нас соответственно - 5 штук. У нас остался очень важный шаг в процессе моделирования - это привязка костей к соответствующим частям тела нашего персонажа, в данном случае, к ногам. Итак если вы еще находитесь на вкладке Joints редактора - пометьте joint3 в списке сочленений.



Как видно из рисунка на проекции должна выделиться наша левая нога (будем называть ее левой, потому что она располагается с левой стороны, хотя возможно, что она и поменяет свою ориентацию в дальнейшем ) Теперь переходим к вкладке
Groups и выделяем группу leg1 выбрав ее мышью и нажав кнопку Select.


Если Вы заметили, на проекции выделилась левая нога нашей модели. Таким образом у нас выделено третье сочленение и левая нога, осталось только привязать их друг к другу. Еще раз напомним Вам, что в играх происходит анимация скелета, а полигоны нужного участка привязанные к анимированным костям, получают движения уже от них.
Возвращаемся на уже знакомую нам вкладку
Joints и нажимаем на кнопку Assign. Эта
команда как раз и осуществляет привязку левой ноги к третьему выделенному сочленению скелета нашей модели. Перед тем как осуществить привязку правой ноги, уберите выделение с левой.
Проделайте то же самое для правой ноги. То есть - пометьте
joint5 в списке сочленений вкладки Joints (у вас выделяется кость теперь уже правой ноги) . Во вкладке Groups выделите группу leg2 и вернувшись во вкладку Joints привяжите кость к ноге, нажав на кнопку Assign.
Если Вы сделали все правильно, то Ваша модель готова к анимации. Но вначале мы попробуем натянуть на нее заранее подготовленную текстуру.

5.4.  Текстурирование и анимация персонажа.

     Для примера нарисуем в редакторе
Paint какую-нибудь простенькую текстуру для нашего монстра:


Если Вы обладаете более изысканными художественными способностями, то можете нарисовать свою Если Вас шокировал файл текстуры, который мы собираемся натянуть на нашего монстра, можете сделать паузу, сделать пару глубоких вдохов и продолжить наше занятие.
Для загрузки текстур в редактор, как Вы уже знаете, служит вкладка
Materials. Нажмите кнопку New для создания нового пустого материала. В списке материалов у Вас добавится имя этого материала (например Material02) теперь нажмите на кнопку <none> для открытия диалогового окна загрузки текстуры из файла. Если вы до этого сохранили нашу зеленую текстуру в папку с нашим проектом для урока №5, то выберите ее (напомню, что она называется toad.png)
Если вы все сделали правильно, у вас в окошке
Material шарик должен покрыться выбранной текстурой, и кнопка  <none> меняет надпись на имя выбранной текстуры:




Нам остается назначить материал всем группам из которых состоит наша модель. Возвращаемся во вкладку
Groups и выделяем все группы, последовательно нажимая на все составляющие списка групп мышью и щелкая на клавише Select. После чего вся наша модель должна окрасится в красный цвет. Теперь снова переходим на вкладку Materials и нажимаем кнопку Assign.  Теперь если вы щелкните правой клавишей мыши на трехмерной проекции редактора и из всплывающего меню выберите опцию textured, как это показано на рисунке ниже, то увидите, как выбранный материал покрыл нашу модель.

 

   Теперь нам остается лишь слегка подправить натяжение нашей текстуры на модель, чтоб она выглядела немного приличнее.
   Пометьте только одно из ушей модели, т.е. группу
ear1 чтоб только одна эта группа была выделена красным цветом. (Вы уже знаете как это делать в закладке Groups) Теперь нажмите комбинацию клавиш Ctrl+T или выберите из верхнего меню редактора раздел: Window -> Texture Coordinate Editor. Этой командой активируется координатный редактор, который позволяет точно натягивать текстуру на выбранные группы модели.



Теперь в верхнем выпадающем списке выберите нашу выделенную группу
ear1  (помечено на рисунке красным кружочком). Так как нам не нужно, чтоб на ухе отображались жуткие зубы и глаза нашего страшилища, то попросту уменьшим масштаб нашей группы при помощи кнопки Scale и чуть уберем ее в сторону командой Move. Должно получиться примерно следующее:



Теперь левое ухо нашего героя на трехмерном виде, будет окрашено в равномерный зеленый цвет. Сделайте то же самое для второго уха и для обеих ног. Попробуйте поэкспериментировать с головой, чтоб текстура рта и глаз равномерно расположилась на нашей группе
head.
Если Ваши эксперименты увенчались успехом, то модель должна принять чуть более приличный вид:



Что это за существо понять трудно, но судя по выражению, оно не сулит ничего хорошего при встрече с ним в узком коридоре. Но чтоб попасть в коридор, оно должно уметь ходить. Давайте же попробуем заставить его шевелить ногами. Сразу оговоримся, что во многом Вам придется это делать самостоятельно и насколько правдоподобно Ваш монстр будет перебирать конечностями, будет зависеть исключительно от Вас.
Итак, приступим. Как Вы помните, кости Вашей модели уже приращены к ногам и потому можно смело жать на большую квадратную кнопку
Anim в самом нижнем правом углу редактора MilkShape3D.
Поставьте число кадров нашей будущей анимации  -
9.

Это делается во втором окошке (где раньше стояла цифра 30, по умолчанию). Десяти кадров будет достаточно, для того чтоб наша незамысловатая модель могла ходить. Теперь для удобства нам понадобятся две проекции нашей модели - на одной проекции удобно выделять разные кости левой и правой ног, а на второй делать поворот костей вместе с ногами имитирующий шаг нашего персонажа.



Если вы уже находитесь в режиме анимации. Выделите кость для левой ноги, как то показано на рисунке выше. Для этого нажмите кнопку
Select и кнопку Joint (в разделе Select Options). Как только кость окрасится зеленым цветом, наша нога будет готова к разного рода движениям. Но вначале присвоим ключевой кадр нашему первому отрезку анимации. Вы видите что ползунок (слева внизу) стоит на первом кадре. Нажмите комбинацию клавиш Ctrl+K или выберите пункт верхнего меню редактора: Animate - > Set Keyframe. Так осуществляется запоминание в кадре текущего состояния нашей модели. С первым кадром закончено.
Переставьте ползунок на второй кадр.

Теперь нужно повернуть ногу нашего персонажа на некоторый угол. Нажмем
кнопку Rotate и сделаем небольшой поворот выделенной кости. Пометим кость второй ноги на удобной для этого проекции и также повернем ее командой Rotate на некоторый угол, но в противоположную сторону. Должно получиться примерно так:



Запоминаем наш второй кадр (
Ctrl+K) и на этом со вторым кадром закончено.
Переставляем ползунок на третий кадр. Если вы уже поняли смысл. То без труда сделаете еще 7 кадров анимации. Заметим, что на третьем кадре, можно еще больше повернуть ноги, каждая в свою сторону, а далее на четвертом уже начинать сдвигать их, то есть четвертый кадр должен походить на второй. На пятом кадре они должны вновь быть сомкнутыми, как на нашем начальном первом кадре. Далее на шестом, вы повторяете  то же самое, только та нога, которая уходила назад в предыдущей последовательности, теперь уходит вперед, а та что уходила вперед, уходит назад. Если вы все правильно сделали,
9-ый последний кадр должен быть единичен первому и пятому, то есть ноги модели должны быть сомкнуты. Не забывайте нажимать (Ctrl+K) после того как вы сделали все изменения для каждого очередного анимационного кадра. Если у Вас возникли затруднения, скачайте модель и разберитесь с анимацией на нашем примере (модель можно скачать тут)

5.5.  Группировка анимационных кадров.

Для того чтобы наша программа на
Blitz3D восприняла нашу модель нужно экспортировать ее в одном из известных Blitz3D формате. Наиболее популярным форматом для моделей языка Blitz3D служит формат md2. MD2 - это формат моделей для игры Quake2. Все анимационные последовательности данной модели содержатся в одном файле. Что касается файла с текстурой то он располагается отдельно от файла модели.
      Для того чтоб сохранить нашу модель в формате
MD2 подготовим один файл с информацией для сохранения. Содержимое файла:

/*
A Quake-C file for exporting MD2 files from
MilkShape 3D.
*/

$sequence stop 1 1
$sequence walk 1 9

Назовите файл md2.qc и разместите в каталоге, где планируете создать модель для загрузки ее в игру. Как вы видите директивами для создания анимационных последовательностей в такого рода файлах служит ключевое слово: $sequence за ним идет название нашей последовательности, ее начальный кадр и ее завершающий кадр. Так для простого статичного  отображения модели в игре мы создали последовательность stop и назначили для нее кадры с  1 по 1. Для последовательности движения, мы создали группу кадров с 1 по 9, которые мы ранее задали.
     Если мы  сейчас попробуем экспортировать модель в формат
MD2 в папку где содержится наш файл с описанием ключевых кадров md2.qc, редактор выдаст сообщение об ошибке:



Это говорит о том, что не все вертексы назначены нашему скелету, что является чистой правдой, ведь мы привязывали к костям только ноги! Для того чтоб привязать и остальные группы, а именно - голову и два уха нашего персонажа, сделайте следующий действия.
На вкладке
Joints пометьте самое первое сочленение, т.е. joint1.
Если пометятся все кости, то используйте правую кнопку мыши в комбинации с клавишей
Shift
чтоб снять пометку с ненужных костей. Желательно чтоб была выделена только одна центральная кость:




Выделите три группы
head, ear1, ear2 на вкладке Groups и вернувшись на вкладку Joints  нажмите кнопку Assign.  Теперь абсолютно все вертексы модели привязаны к соответствующим костям.



Экспортируйте модель в формат
md2, для чего выберите из верхнего меню редактора пункт:
File -> Export -> Quake2 MD2  и присвойте модели имя hero.md2.

5.6.  Персонаж в игре.

    Поскольку у нас уже есть наша первая модель, настало время поместить ее в игру. Воспользуемся наработками наших недавних уроков и загрузим какой-нибудь из последних проектов, например room8.bb. Вы можете скопировать его в другую папку вместе со всеми текстурами, а можете добавить нашу модель hero.md2 и текстуру toad.png в ту папку, где находится вышеназванный проект.
Для загрузки модели в игру напишем следующие пару строчек, кода:

hero_tex=LoadTexture( "toad.png" )
hero=
LoadMD2( "hero.md2" )
EntityTexture hero, hero_tex
PositionEntity hero1, 10, -1.5, 14
ScaleEntity hero1, 0.03, 0.03, 0.03

     После загрузки текстуры для нашего героя, мы вызываем функцию LoadMD2, которая загружает с диска модели исключительно формата Quake2. После этого натягиваем на модель ранее загруженную текстуру при помощи уже знакомой функции  EntityTexture.
Если вы сами делали модель, то аргументы следующих функций Вы скорее всего будете подбирать самостоятельно. Если же вы переписали эту модель
, поставьте те, которые приведены в примере выше. Все дело в том, что все зависит от того в каком масштабе вы проектировали вашего героя в редакторе MilkShape3D  и какое смещение модели

выдерживали от начала координат. В любом случае подберите эти параметры экспериментально.
     Выше приведенный фрагмент кода, вставьте где-нибудь до начала главного цикла программы. Запустите программу и увидите нашего персонажа внутри ранее созданного лабиринта.
 
 

      Теперь нам осталось посмотреть, как вызывать анимационные последовательности нашего героя. Давайте запрограммируем клавиши F1 и F2 клавиатуры для запуска анимации ног модели и остановки их соответственно.
      Следующий код, как раз и выполнит поставленную задачу:

If KeyDown(59) AnimateMD2 hero, 1, 0.2, 1, 9
If
KeyDown(60) AnimateMD2 hero, 1, 0.2, 1, 1

Функция языка Blitz3D AnimateMD2 устанавливает режим смены кадров для модели формата MD2 и принимает следующие аргументы:
 

md2 - md2 handle

mode (опционально) - режим анимации
0: анимация остановлена
1: анимация в цикле (по умолчанию)
2: ping-pong анимация
3: анимация в один проход

speed# (опционально) - скорость анимации, по умолчанию 1.
first_frame (опционально) - первый кадр анимации, по умолчанию 1.
last_frame# (опционально) - последний кадр анимации. По умолчанию завершающий кадр всех последовательностей md2 файла.
transition# (опционально) - гладкость перехода между последним фреймом предыдущей анимационной последовательности и первым кадром следующей анимации. По умолчанию - 0.

Если вы все сделал правильно, то при нажатии на клавишу F1 наша модель начинает перебирать ногами следуя списку кадров от 1-го до 9-го в цикле. Достигнув 9-го кадра, последовательность повторяется:

Если Вы заметили, для остановки модели мы просто выбрали последовательность с 1 по 1 кадр, а могли передать команде AnimateMD2 аргумент режим анимации равный 0.
Поэкспериментируйте с разными режимами анимации и ее скоростью, подберите оптимальные параметры.
В последующих уроках, мы научимся двигать анимированных персонажей, взаимодействовать с ними, учитывать взаимодействия этих персонажей с другими объектами игрового мира.

Программу можно загрузить здесь (
room7.bb)


 

 
 
 

уже 16000 посетителей!
 
Часы
 
Этот сайт был создан бесплатно с помощью homepage-konstruktor.ru. Хотите тоже свой сайт?
Зарегистрироваться бесплатно