|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.11.2007, 16:51 | #1 |
Пользователь
Регистрация: 11.04.2007
Сообщений: 36
|
Анимация в играх
Интересует вот какой вопрос.
Когда делал игры в GameMaker там была возможность использования GIF файлов. Например при нажатии стрелки в лево можно было вывести GIF файл движения персонажа в лево. Можно ли что то подобное сделать в Delphi? Если да то опишите пожалуйста способ по проще))) |
21.11.2007, 10:06 | #2 |
Пользователь
Регистрация: 18.04.2007
Сообщений: 80
|
Есть GIF компонент, тока у меня его нет. А можно использувать масив. Разбить твое поле на ячейки, а потом делать анимацыю перемещаючи из одной клетки в другую.
Вот картинка, так ты лутше поймеш. Мне ее делал Beermonza Последний раз редактировалось ChukCha; 21.11.2007 в 10:17. Причина: Лутший вариант обяснения |
23.11.2007, 22:47 | #3 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
frai, это не совсем пример анимации, это пример грубого перемещения персонажей по некоторой карте. Анимация, если она простая (4-6 кдров в секунду) нуждается в создании и хранении всех кадров, ...можно хранить их в массиве типа TBitmap, создать таймер с интервалом 250-166 мс, в котором выполнять смену картинки объекта Image, там же можно указывать прозрачность. Если анимация на 12-24 кадра, то все координально меняется.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
24.11.2007, 13:11 | #4 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,692
|
Как заделать анимацию!
Есть куча способов сделать анимацию в играх.
Например вы жмете клавишу up, то ваш герой идет вверх, если down, то вниз, и соответственно left и right. Сделать это можно так: Заведем 2 переменные x,y: integer; У вас имеется картинка 4x10, т.е. 4 - это направление вашего героя, а 10 это кадры движения героя(его анимация). Допустим 1 это движение вверх, 2 это движение вниз, 3 это движение влево, 4 это движение вправо. При нажатии клавиши up x:=1; y:=1; выводим кадр с этим номером, далее y увеличиваем и т.д. Пример: Последний раз редактировалось Kostia; 24.11.2007 в 13:49. |
25.11.2007, 14:28 | #5 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
2 frai
ищи статьи по работе со спрайтами, это и есть анимация То, что дал Kostia тоже спрайтовая анимация
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 25.11.2007 в 14:37. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Анимация | SanekIrk | Общие вопросы Delphi | 2 | 15.08.2008 21:57 |
Анимация | SanekIrk | Общие вопросы Delphi | 11 | 08.08.2008 15:24 |
Анимация AVI | Hottabych | Мультимедиа в Delphi | 5 | 16.03.2008 16:10 |