АКЦИЯ от www.R3.ru - хостинг сайтов 72р. в месяц. Домен в подарок! |
Delphi.dax.ru | ||
Сайт
Новости
О сайте Форум Уроки
DelphiX
Спрайты Анимация 3D max |
DelphiX -> Урок 3. Анимация Предыдущий урок |Следующий урок
В этом уроке я научу Вас делать персонажей анимированными.
Для облегчения урока воспользуемся "Уроком 1. Спрайты". Возьмём из него весь исходный код. 1. Но прежде чем приступать к написанию программы расскажу как делается анимация. Для анимацию нужно: 1 файл графического формата, которые должен иметь следующий вид: Принцип построения анимации прост: анимация (изображение) должна состоять из 2 и более кадров одинаковой ширины и высоты. 2. Теперь создаём анимированного персонажа. Я нарисовал своего Выможете скачать его (Правая кнопка мыши на изображение -> Сохранить как...) или сделать своего Теперь надо загрузить нашего персонажа в DXImageList1 В Properties DXImageList1 ищем свойство Items и открываем его (жмём квадратик с 3-я точками) За тем выбираем Add New (Ins). Появился новый Item с названием 0 - TPictureCollectionItem Ему нужно задать имя (Name). Давайте будет Colobok. Далее выбираем свойство Picture (жмём квадратик с 3-я точками) и загружаем наше изображение. Далее нужно обязательно в Properties Colobok'а своству PatternHeight (Высота кадра) и задать PatternWight (Ширина кадра) значение 50. Поему 50? Потому, что ширина и высота кадра моего колобка 50px. 3. Теперь собственно код анимации в OnCreate нашей формы.
AnimCount:=image.PatternCount; // Количество кадров
Т.е. Выглядит это так:AnimLooped:=True; // Повторное воспроизведение = true AnimSpeed:=5/1000; // Скорость анимации
procedure TForm1.FormCreate(Sender: TObject);
Тут всё понятно, объяснять не стоит.begin with TColobok.Create(DXSpriteEngine1.Engine) do // Связываем последующий код с TColobok begin image:=form1.DXImageList1.Items.Find('Colobok'); // Выборка изображения для спрайта спрайта x:=40; // X координата TColobok y:=40; // Y координата TColobok width:=image.Width; // Ширина равна ширине спрайта height:=image.Height; // Высота равна высоте спрайта AnimCount:=image.PatternCount; // Количество кадров AnimLooped:=True; // Повторное воспроизведение = true AnimSpeed:=5/1000; // Скорость анимации end; end; Ну в общем всё! Компилируем проект и смотрим! Скачать исходный код урока 3 Предыдущий урок |Следующий урок |
|
Delphi.dax.ru © 2009 Delphi.dax.ru |