Анимация доделана

Наконец я доделал анимацию. По сравнению с прошлым разом, я сделал поддержку других типов анимации кроме анимации позиции, а именно анимацию поворота и масштаба. Правда, не припомню, когда мне нужна была в играх анимация масштаба, ну да пусть будет.

Кроме того я сделал возможность экспортирования моделей с иерархическими структурами. То есть чайлды-паренты. В связи с чем вот вам новые спецификации форматов:

Формат сцены:

Формат AAF (ABTOMAT Animation Format)
Версия 2

ГОЛОВНИК

10 байт - название формата
2 байта - номер версии

2 байта - длина служебной строки
сама служебная строка

2 байта - длина анимации

2 байта - кол-во объектов, имеющих анимацию

ОБЪЕКТЫ

// Общая инфа

2 байта - длина имени объекта
само имя объекта

1 байт - флаги (2 = анимирована позиция, 4 = анимирован поворот, 8 = анимирован масштаб, or-комбинация)

АНИМАЦИИ

1 байт - тип контроллера анимации (1 = Position_XYZ)
2 байта - кол-во ключей

КЛЮЧИ

// Для позиции

4 байта - время
4 байта - X
4 байта - Y
4 байта - Z

И формат анимации:

Формат AAF (ABTOMAT Animation Format)
Версия 2

ГОЛОВНИК

10 байт - название формата
2 байта - номер версии

2 байта - длина служебной строки
сама служебная строка

2 байта - длина анимации

2 байта - кол-во объектов, имеющих анимацию

ОБЪЕКТЫ

// Общая инфа

2 байта - длина имени объекта
само имя объекта

1 байт - флаги (2 = анимирована позиция, 4 = анимирован поворот, 8 = анимирован масштаб, or-комбинация)

АНИМАЦИИ

// Порядок их: положение, поворот, размер в соответствии с ключами

2 байта - кол-во ключей

КЛЮЧИ

// Для позиции

4 байта - время
4 байта - X
4 байта - Y
4 байта - Z

// Для поворота

4 байта - время

4 байта - quat.x
4 байта - quat.y
4 байта - quat.z
4 байта - quat.w


// Для масштаба

4 байта - время
4 байта - X
4 байта - Y
4 байта - Z
 599195086@qip.ru (09:04:33 22/07/2013) 
10 байт - название формата
2 байта - номер версии

2 байта - длина служебной строки
сама служебная строка

2 байта - кол-во объектов

ОБЪЕКТЫ

// Общая инфа

2 байта - количество чайлдов

2 байта - длина имени объекта
само имя объекта

2 байта - кол-во сурфейсов 

// Трансформации

// Позиция

4 байта - X
4 байта - Y
4 байта - Z

// Поворот

4 байта - quat.x
4 байта - quat.y
4 байта - quat.z
4 байта - quat.w

// Масштаб

4 байта - Масштаб X
4 байта - Масштаб Y
4 байта - Масштаб Z

СУРФЕЙСЫ

4 байта - число вершин
4 байта - число индексов 

ВЕРШИНЫ

4 байта - X
4 байта - Y
4 байта - Z


4 байта - U
4 байта - V
4 байта - W

4 байта - NX
4 байта - NY
4 байта - NZ

ИНДЕКСЫ

4 байта - первая вершина
4 байта - вторая вершина
4 байта - третья вершина

Встречайте человека-чайника! Он сделан топором за пять минут, как и его анимация! Но это не главное. Главное то, что он является сложной иерархической структурой: его туловище припаренчено к корню сцены, предплечья припаренчены к туловищу, запястья — к предпречьям, аналогично устроены ноги, ну и голова просто к туловищу. Таким образом протестирована возможность иметь сколь угодно сложные сцены с точки зрения иерархии а также корректность работы анимации.


You can leave a comment with "Facebook":
Не забывайте оставлять комментарии при помощи "ВКонтакте":
Яндекс.Метрика