Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DirectX. Продвинутая Анимация (2004) [rus].pdf
Скачиваний:
335
Добавлен:
16.08.2013
Размер:
8.39 Mб
Скачать

Использование формата файла .X

};

cXContactParser Parser; Parser.Parse("contacts.x");

После единственного вызова cXContactParser::Parse вы увидите список имен людей, телефонных номеров и возрастов - все содержащееся в "contact.x" файле! Разве это не было просто? Видите, вы не должны боятся формата файла .X. Лично

яиспользую этот формат для хранения всех данных, какие только могу.

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

.X формат для хранения специализированных данных, связанных с каждым разделом анимирования, так что я хочу, чтобы вы чувствовали себя уверенно используя .X

Посмотрите демонстрационные программы

В этой главе вы узнали, что такое .X, все - от создания ваших собственных шаблонов до использования этих шаблонов для создания объектов данных, хранящих важные данные вашей игры. Для помощи в демонстрировании полезности .X и для примера использования кода, приведенного в этой главе, я включил две демонстрационные программы (ParseFrame и ParseMesh) в компакт-диск этой книги. Посмотрите, что делает каждая демонстрационная программа.

ParseFrame

Первой демонстрационной программой для этой главы является ParseFrame, которая иллюстрирует использование информации при загрузке иерархии фреймов из .X файла. Как показано на рис. 3.2, ParseFrame имеет кнопку, названную "Select

.X File" ("Выберите .X файл"). Нажмите эту кнопку, выберите загружаемый .X файл и нажмите "Open" ("Открыть").

После выбора .X файла для его загрузки нажмите "Open" для отображения иерархии фреймов, содержащихся в .X файле. На рис. 3.2 показана иерархия фреймов, содержащихся в файле "Tiny.x", расположенном в директории DirectX SDK \samples\media. Для облегчения, фреймы расположены в соответствии с их уровнем в иерархии.

122

Глава3

Рис. 3.2. Диалоговое окно демонстрационной программы ParseFrame содержит два элемента: кнопку для загрузки .X фала и окно списка для отображения иерархии фреймов

ParseMesh

Вторая демонстрационная программа, находящаяся в директории главы 3, - ParseMesh. Как и у демонстрационной программы ParseFrame, у нее есть кнопка (как показано на рис. 3.3), нажав на которую вы указываете и открываете .X файл.

В противоположность списку иерархии фреймов ParseFrame, демонстрационная программа ParseMesh перечисляет информацию о найденных мешах в открытых

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

Программы на компакт-диске

В директории главы 3 вы найдете два проекта, иллюстрирующие использование класса анализирования .X. Этими двумя проектами являются:

ParseFrame. Эта демонстрационная программа использует класс cXParser для загрузки и создания иерархии фреймов из .X файла. Она расположена в \BookCode\Chap03\ParseFrame.

Использованиеформатафайла.X

123

Рис. 3.3. После указания и открытия .X файла вам показываются данные каждого меша, содержащегося в этом файле

• ParseMesh. Вы можете использовать эту программу для загрузки и отображения информации о мешах (обычных и скелетных). Она расположена в \BookCode\Chap03\ParseMesh.

Часть III

Скелетная анимация

4.Работа со скелетной анимацией

5.Использование скелетной анимации, основанной на ключевых кадрах

6.Комбинирование скелетных анимаций

7.Создание кукольной анимацией

Соседние файлы в предмете Программирование на C++