ria pc game
fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
16 декабря 2018
16:21
Вход Регистрация Забыли пароль ?

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля - страница 2
             
подробнее...

Теги

создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт

Статьи сайта

Часто Задаваемые Вопросы

Продукты

Проблемы с кодировками при отображении страниц

игра Нечто: Необъяснимое Нить Накала - "в плену желаний"

Система Автоматизации Доставки Электронных Заказов megainformatic cms e-pro

megainformatic cms e-pro Автоматизация Обработки Уведомлений о Заказах по партнерским программам

megainformatic cms e-pro Автоматизация Обработки Уведомлений о Заказах по партнерским программам

webinformatic: Музыкальная страничка трэкера

megainformatic - Создание музыки и звука

webinformatic: Создание музыки и звука: урок 2

megainformatic - Создание музыки и звука: урок 3 - настройка Impulse Tracker для работы в WinXP

megainformatic - Создание музыки и звука: урок 4 - Введение в Mod Plug Tracker

megainformatic - Создание музыки и звука: урок 5 - Первая композиция в Mod Plug Tracker

megainformatic - Создание музыки в Impulse Tracker 2.14 - урок 6 - Ввод Нот

megainformatic - Создание музыки в Impulse Tracker 2.14 Первая мелодия

megainformatic - Создание музыки в Impulse Tracker 2.14 Настройка параметров сэмплов

megainformatic - Создание музыки и звука: теория и практика создания трэкерской музыки

megainformatic - Инструкция по оплате услуг средствами WebMoney

Основы работы в Microsoft Visual Studio 2008 и DirectX 9 (DX SDK Aug 2008)

Введение в программирование игр на С++ для платформы DirectX 9 - Первый старт

Введение в программирование игр на С++ для платформы DirectX 9 - Меняем иконку приложения

Введение в программирование игр на С++ для платформы DirectX 9 Добавляем другую модель

Введение в программирование игр на С++ для платформы DirectX 9 Программирование игр в directx. Hello, World!

Введение в программирование игр на С++ для платформы DirectX 9 Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008 - Урок 1 Основные операторы языка C++

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008 - Урок 1 Основные операторы языка C++ (часть 2)

Урок 2 Написание Win32-приложений. Обзор стартового кода Win32-приложения. Добавление ресурса текстовая строка

Урок 3 Создание Win32-приложений. Создание меню и простых диалоговых окон.

Урок 4 Создание Win32-приложений. Стандартные диалоги. Изучение сопутствующих конструкций языка. Консольные Win32-приложения. Указатели. Ссылочный тип. Массивы.

Урок 4 часть 2 Win32. Диалог выбора цвета, смена цвета фона окна приложения

Написание приложения DirectX9c + MFC в среде MSVS 2005

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7 - Почему избраны DX8 и Delphi ?

megainformatic - Основы IDirectMusic8 в среде Delphi6-7

megainformatic - Основы DirectInput8 в среде Delphi 7

megainformatic - Основы DirectSound8 в среде Delphi6-7

megainformatic - Плагин для 3DS MAX из DX9 SDK

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2)

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 2

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 3

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 4

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 5

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 6

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

megainformatic - Уроки 3ds max - Введение в 3ds max

megainformatic - ГАЛЕРЕЯ 3D-моделей

megainformatic - СОЗДАНИЕ МАКЕТА ПОМЕЩЕНИЯ

megainformatic - Создание макета помещения - этап 2

megainformatic - МОДЕЛИРОВАНИЕ НА УРОВНЕ МНОГОУГОЛЬНИКОВ

megainformatic - СОЗДАНИЕ ПРЕДМЕТОВ ОБСТАНОВКИ ПОМЕЩЕНИЯ

megainformatic - Моделирование обстановки помещения

megainformatic - Создание модели автомобиля

megainformatic - Создание текстурной развертки для модели автомобиля

megainformatic - Создание анимации вращающихся колес автомобиля

     
  [Все уроки 3ds max] [Галерея моделей] [назад] [далее]  
     
 
Построение ирерархических связей между объектами и основы 3d анимирования.
 
Чтобы модели не "рассыпались" на составные части при экспорте образуйте из них иерархию путем установления связей (Select And Link) между главными и дочерними объектами. Например, если руки, ноги и голова - отдельные объекты, то тело может стать главным объектом (корневым - root), а к нему будут привязаны эти объекты. Точно также если рука состоит из плеча и предплечья (как отдельных объектов), то плечо может быть родителем (root) для предплечья в иерархической связи между ними. При создании скелета иерархические связи между костями цепочки созданной за один раз устанавливаются автоматически. При этом первая созданная кость цепочки и будет родительским (корневым) объектом, а последующие кости будут связаны между собой точно такими же последовательными связями - от родителя к потомкам: плечевая кость -> кость предплечья -> кости (кость) кисти -> кость (кости) пальцев.
 
В данной цепочке перемещение плечевой кости приведет к перемещениям всей цепочки связанных костей. Это и будет прямая кинематика (forward kinematics или FK). Если рассматривать данную манипуляцию в обратной последовательности - перемещение пальцев, то инверсная кинематика (IK) вызовет соответствующие смещения всех родительских костей - кистевых - предплечья - плеча.
 
Создание анимации
 
Мы с Вами рассмотрим создание анимации на примере объектной, т.е. будет взята модель построенная из отдельных примитивов, а анимация будет основана на простых трансформациях этих примитивов.
 
Скачайте данный архив - object_anim (26 Kb) и откройте модель necto.max из 3ds max 7.0 (или выше).
 
модель Necto
 
Вы увидите модель некоего Некто, полностью построеннную из простых примитивов. Можете посмотреть систему иерархических связей данной модели - Graph Editors > Schematic View
 
иерархические связи модели Necto
 
Все связи сделаны при помощи Select And Link от подчиненного объекта к главному. Как видите корневым (root) объектом является примитив body. Все остальные примитивы напрямую или посредством родителя присоединены к нему.
 
Это даст Вам возможность с одной стороны иметь цельный неразрывный объект (модель), а с другой анимировать каждый из примитивов с использованием простых трансформаций - смещения, вращения, масштабирования.
 
Попробуем анимировать простейшую хотьбу.
 
Расположите модель удобным образом и выберите левую ногу (LLeg).
 
выбор левой ноги (LLeg)
 
Настроим параметры анимации. Пусть наша анимация будет качеством Film (24 кадра в секунду - 24 fps) и длительностью 24 кадра (1 секунду).
 
В панели анимации нажмите кнопку Time Configuration
 
панель анимации и кнопка Time Configuration
 
В открывшемся окне диалога задайте указанные параметры и нажмите ОК -
 
 
Вы увидите теперь, что временная шкала анимации отображает искомые 24 кадра, что нам и нужно.
 
Создадим анимацию движения левой ноги по ключевым кадрам -
 
В панели анимации нажмите кнопку Auto Key для автоматической генерации ключевых кадров -
 
включение режима автоматической генерации ключевых кадров
 
Пусть движение ноги будет происходить за 4 фазы, каждая по 6 кадров. Переместите бегунок анимации на 6 кадр (на рисунке 0/24 - обведен кружком).
 
Выполните перемещение и вращение ноги так, чтобы оформился шаг -
 
некто делает шаг
 
После вращения Вы увидите, что нога отделилась от тела, поэтому переместите ее так, чтобы этого не происходило.
 
Теперь переместите бегунок на 12 кадр и щелкните по нему правой кнопкой. В открывшемся диалоговом окне в поле Source Time введите 0, нажмите ОК
 
создание ключевого кадра - положение ноги в крайнее переднем
 
Это приведет к копированию ключевого кадра из 0 в 12 и к возврату ноги в исходное состояние.
 
Теперь сделайте подобную анимацию, но для движения ноги в противоположном направлении.
 
оложение крайнее заднее
 
Перейдя на 24 кадр скопируйте ключевой кадр из 12 в 24 -
 
последний шаг создания анимации левой ноги
 
Отключите кнопку Auto Key. Попробуйте проиграть анимацию движения левой ноги путем перемещения бегунка или путем нажатия кнопки Play на панели анимации. Пример законченной анимированной модели - necto_go (18 Kb).
 

Для остальных конечностей и тела анимация осуществляется аналогично. Только имейте в виду, что связи типа Link (при помощи Select And Link) работают только односторонне, т. е. перемещая родителя можно переместить и все связанные с ним объекты, но не наоборот. Перемещая дочерний объект Вы не переместите родительский! Ведь это не инверсная кинематика!!!

Созданный анимированный файл легко экспортировать в формат X экспортером PandaDXExport для применения в Direct3D8, Direct3D9 и DXExtensionsMax.gup только для Direct3D9. При экспорте экспортером PandaDXExport на вкладке Animation не забудьте указать верную анимационную цепочку и частоту кадров, возможно даже придется немного поэкспериментировать с параметрами экспорта, чтобы экспорт анимации происходил корректно.

 
Данный тип анимации (как уже было сказано выше) носит название объектной, т.к. осуществляется за счет простых трансформаций отдельных примитивов модели, образующих ирерархию.
 
Как видите он проще для создания, но и менее изящен. Анимация осуществляется с гораздо меньшими вычислительными затратами по сравнению со скелетной. Такой тип анимации применялся например в игре Warcraft III Reign of Chaos, так что можете сами посудить о всех ее достоинствах и недостатках.
 
Технология создания скелетной анимации осуществляется точно таким же образом с тем лишь отличием, что Вы анимируете скелет, который в свою очередь анимирует связанные с ним вершины модели.
 
Особенности подготовки модели к экспорту скелетной анимации мы рассмотрим ниже.
 
Если Вы возьмете файл fedja_anim_go.max из архива skinned_fedja и попробуете экспортировать скелетную анимацию в формат X при помощи экспортера PandaDXExport, то получите примерно такой результат -
 
результат экспорта fedja_anim_go.max
 
Такой результат анимации Вы получите если будете просматривать ее из DirectX Viewer DirectX SDK 9. Приложение SkinnedMesh вообще не сможет ничего показать давая лишь ошибку.
 
Первое что приходит в голову - это то, что виноват экспортер PandaDXExport. Однако это не совсем так и всё еще можно исправить.
 
Всё дело в том, что руки модели персонажа должны быть уже опущены. Соответственно должны быть опущены и кости скелета рук.
 
модель Феди с опущенными руками
 
Щелкнув по рисунку Вы можете скачать архив fedja_transformed (95 Кб). Он содержит скорректированные модель и скелет, а также анимацию. Коррекция состояла в перемещении вершин модели относящихся к рукам в положение показанное на рисунке. Кости скелета также были трансформированы. Архив также содержит файл fedja_transformed_with_skel_go.max содержащий готовую к экспорту скорректированную модель и скелетную анимацию.
 
Следует заметить, что если Вы сами возьмете из архива файл fedja_transformed_with_skel.max и попробуете настроить корректно огибающие (Envelopes) для весов костей, создадите анимацию, то столкнетесь с проблемой настройки весов для отдельных вершин, которые плохо или совсем не охватываются огибающими. Выше уже говорилось, что такую настройку можно выполнить через Таблицу Весов - Weight Table.
 
кнопка вызова Таблицы весов панели параметров модификатора Skin c открытым узлом Envelope
 
Если выбрать определенную вершину (несколько вершин), для этого нужно установить флажок Vertices в окне параметров модификатора Skin с открытым узлом Envelope -
 
выбранная вершина
 
На рисунке кружком отмечена выбранная на модели вершина
 
Данная вершина при анимации как раз плохо охватывалась огибающей, поэтому жмем кнопку Weight Table и выбираем - Selected Vertices (только для выбранных вершин).
 
 
Поскольку мы выбрали только одну вершину, то она и показана в столбце Vertex ID. Данная вершина должна двигаться вместе с костью RLeg_Bone_Clavicle (если вершина выбрана на правой ноге). Прокручиваем нижнюю полосу прокрутки и находим искомую кость. Задаем для нее коэффициент 1,000. Т.е. данная кость будет полностью определять положение данной вершины.
 
Аналогично корректируются веса влияния костей для всех остальных вершин, чья анимация, если Вы заметите, осуществляется некорректно - т.е. кости движутся, а вершины - движутся слабо или вообще остаются на месте.
 
Это было всё, что я хотел Вам рассказать о проблемах создания и экспорта скелетной (и объектной) анимации. Если что-то было Вам не совсем ясно или не получилось - значит нужно еще попрактиковаться. Тема достаточно сложная и обширная, но она стоит того, т.к. без анимации не обходится ни одна игра. Если всё же вы столкнулись с неразрешимыми на ваш взгляд трудностями, то - пишите, постараюсь ответить.
 
     
  [Все уроки 3ds max] [Галерея моделей] [назад] [далее]  
     
     
megainformatic live chat
Начать беседу
X
 

Оставленные комментарии



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
megainformatic Размещение баннерной рекламы у нас
Время загрузки: 0,1137