Анимированные cпрайты в TrueSpace
Как создать высокохудожественное изображение не имея хороших навыков рисования?
Раньше все спрайты приходилось рисовать по точкам или в простеньких редакторах
а-ля MS Paint ( хотя году в 92-93 такой редактор считался вполне нормальным :).
С появлением таких пакетов как 3D Studio, Ray Dream Studio и т.д. положение изменилось.
Весь процесс создания заключается в изготовлении единичной модели, которую потом
можно отрендерить под любым углом и придать необходимые движения.
Но вернемся к практической части. Первое: нужно достать непосредственно сам
пакет 3D графики. Я выбрал TrueSpace 4 по нескольким причинам:
-
Он не так требователен к ресурсам : вполне нормально работает на P-233 с 32Mb,
a 3D Studio нужно 48Mb минимум
-
Более визуализирован: все операции можно производить прямо на объекте.
-
Экспортирует в формат Direct3D - *.x
- На мой взгляд его проще понять без книжки. Интуитивный интерфейс.
Демо версию TrueSpace 4.3 можно скачать на сервере фирмы-разработчика: Caligari,
или Вы можете поискать программу на многочисленых FTP архивах. На данный момент
доступна версия 5.X, но честно говоря все необходимые функции есть и в старой
версии.
Этап 1 - сделать нужную модель
Здесь можно поступить двумя путями - скачать готовые модели со специальных
серверов, либо делать что-то самому. Быстрее всего достать уже готовую и изменить
ее для своих целей. Но можно делать с нуля, применяя различные модификаторы к
стандартным примитивам. В примере я взял готовую модель самолета B-25:
Выглядит она впечатляюще. Маленький совет на : стадии работы не
заливайте модель текстурами - это сильно тормозит работу компьютера. Текстуры
наложите только в последнюю очередь.
Этап 2 - задание движения
Допустим наш самолет летит только вперед и делает поворот вправо
и влево. Для этого модель надо повернуть по ходу его полета. Вызываем меню объекта
( правый клик на значке курсора ) и вводим параметры поворота модели: X : 0, Y
: 0, Z : -90.
Далее приводим модель в начальное положение - крайне правое. Для
этого установим поворот Y : 45. Далее инициализация анимации : нажмите кнопку
2 на рисунке ( Record ) и запускаем анимацию - кнопка 3. Программа запомнила начальное
положение объекта.
Теперь введем количество кадров для анимации ( на рис цифра 1
) 30 кадров и развернем самолет в его конечное положение ( крайне левое ). Для
этого введем Y : -45 градусов. Все - теперь нажав кнопку Play вы сможете увидеть
поворот самолета. Поворачивая камеру Вы можете создать анимацию под любыми углами.
Все зависит от выбора вида в игре.
Этап 3 - заключительный этап рендеринг
Ддля некоторых он может быть головной болью из-за нехватки быстродействия.
Каждый кадр анимации записывается в отдельный файл или в видео ролик. Тут все
просто. Главное в свойствах рендеринга поставить цвет фона ( BackGround : Color
) и сглаживание ( AntiAlias : None ).
BackGround - нужно выбрать, токой какого цвета нет на сомой модели,
иначе не возможно будет выводит спрайты с прозрачным цветом.
Что из этого получилось, можно увидеть тут.
Единственный минус всех пакетов, и TrueSpace в частности - он
создает на каждый кадр свой отдельный файл. И в конце рендеринга у Вас получится
огромное количество файлов с которыми очень неудобно работать. Надо склеить каждое
движение в один файл и для этого я написал небольшую программку BMPCreator.
Пользоваться ей очень просто: Вы задаете каталог, где лежат BMP
файлы. Задаете ( если понадобится ) отсечение сверху, снизу, справа, слева и отступ
между спрайтами.
Далее, задав выходное имя файла, нажимаете 'Создать' и все отдельные
спрайты склеиваются в один файл.Программа создает временный файл и Вы сразу можете
посмотреть полученную анимацию, нажав "загрузить". Если Вас все устраивает,
то сохраняйте полученный файл - "Сохранить в файл".
Потом его очень удобно грузить в ImageList или в DirectDrawSurface.
На каждое законченное движение лучше создавать свой файл. Для компиляции потребуется
DelphiX и RXLib. Да, совсем забыл сказать - скомпилированную программу я не высылаю,
если вы не можете откомпилировать готовый пример - вам не чего заниматься созданием
игр :)
Список ссылок
Адрес автора |
|
Официальный сервер True Space |
|
Пример полученных спрайтов |
|
Исходный код BMP Creator |
|
Модели 3D Cafe |
|
Просмоторщик и конвертер 3D форматов 3D Exploration |
|
|