Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Анимация объекта


AKMTT ©   (2006-01-05 00:32:00) 

Доброго времени суток
Помогите со следующим: делаю игру, в ней есть персонаж, который должен двигаться, допустим человечек в 2D. Как сделать анимацию? Через спрайты? Нужно отрисовать каждое движеные: вперед, назад, вверх, вниз, движение рук? Подскажите как лучше осуществить это.


fci   (2006-01-09 19:31:00) [1]

code.darthman.com -> download -> конкурсы -> battle


AKMTT   (2006-01-08 01:06:00) [2]

2XProger
:) просто думал не нужно изобретать велосипед :) Ладно буду разбираться


XProger   (2006-01-08 01:03:00) [3]

AKMTT, ну ты же программист! Следовательно, должен эти задачи щёлкать как семечки - это вызов твоему интеллекту, прояви творческий подход к её решению ;)


AKMTT   (2006-01-08 00:07:00) [4]

Так вот вопрос, к римеру щелкнул я мышкой, нужно чтобы этот прямоугольник плавно передвинулся к нужному месту. Как это реализовать, а то у меня получается, что он просто прыгает туда, или передвишается, но программа подвисает. И как лучше всего осуществить плавную смену текстур, как узнать сколько времени прошло после нажатия мыши, чтобы к пример при хотьбе изменять текстуру каждый 100 мс? GetTickCount?. Или как Вы посоветуете?


Братан   (2006-01-07 06:16:00) [5]


> Аццкий_рыцарь:)   (05.01.06 05:31) [2]
>
> ггггг смотри в этой теме и внимай, что скажут мастера. НО
> НИ В КОЕМ СЛУЧАЕ НЕ НАЧИНАЙ УЧИТЬ  DelphiX ! уже лучше через
> канвас что-то рисовать :)


Через канвас получается как раз нормально : http://kolobochki.narod.ru/
Потому, что для таких игр FPS не нужен. А сделанный движок никогда не поздно портировать под OpenGL. Если конечно надо.


Cash   (2006-01-06 16:10:00) [6]

AKMTT   (06.01.06 14:41) [14]:
Да, это и будет персонаж.


AKMTT   (2006-01-06 14:41:00) [7]

2Тряпка_с_элефантом Шутка :)
Всем спасибо :)
И еще вопрос: текстуру с текущим кадром натягивать на прямоугольник? это и будет персонаж? или каким образом?


  (2006-01-05 23:07:00) [8]

Удалено модератором


XProger   (2006-01-05 22:53:00) [9]

Тряпка_с_элефантом, эту ленту придётся порезать вручную, т.к. OpenGL не держит текстуры не 2^n


  (2006-01-05 21:28:00) [10]

Удалено модератором


  (2006-01-05 21:15:00) [11]

Удалено модератором


  (2006-01-05 21:13:00) [12]

Удалено модератором


AKMTT   (2006-01-05 15:36:00) [13]

2XProger Спасибо.


JUS   (2006-01-05 12:53:00) [14]


> Аццкий_рыцарь:)   (05.01.06 05:31) [2]

)))))))))))))


XProger   (2006-01-05 12:40:00) [15]

http://www.timeforkill.mirgames.ru/img/scr/5.jpg
Анимация спрайтовая
+ Качественно
+ Просто
- Большой размер

Но можно и со скелеткой повозиться
http://xproger.narod.ru/TFK_ModelEdit.rar- редактор
http://xproger.narod.ru/Sarge.zip- модель
+ Возможность реализации RagDoll
+ Относительно небольшой размер
- Чтобы добиться приличного качества - нужно постараться
- В своём редакторе анимировать будет сложнее, нежели чем в максе
- Общая сложность реализации и использования, но оно того стоит ;)


Cash   (2006-01-05 10:03:00) [16]

Пардон, с картинкой обшиб: вот так поправил:

(0,0)                                       (1,0)
+-------+-------+-------+-------+
|###1###|###2###|###3###|###4###|
+-------+-------+-------+-------+
|###5###|###6###|###7###|###8###|
+-------+-------+-------+-------+
|###9###|##10###|##11###|##12###|
+-------+-------+-------+-------+
|##13###|##14###|##15###|##16###|
+-------+-------+-------+-------+
(0,1)                                       (1,1)
'+': Угол кадра
'#': Заполнение кадра


Cash   (2006-01-05 09:59:00) [17]

Аццкий_рыцарь:)   (05.01.06 05:31) [2]:
:D :D :D :D
Уже научен горьким опытом!?
:D :D :D :D

AKMTT   (05.01.06 00:32):
... допустим человечек в 2D ...
Это, типа, берем картинку чувака, и надо ее проанимировать? :)))

... Или в 3D Max'e делать модель? ...
А, это типа, ты хочешь взять чувака из 3DMax-а, и запихать его в игру? :)))

:)))

Не, а если серьезно, то:
Ты пишешь 2D игру на OpenGL, так? Иначе далее можно не читать.
Да, действительно, ход мыслей верен. Можно взять 3D-Max,
создать в нем модель, а потом, путем рендеринга сделать 2D текстуру.
Собирай эту текстуру в анимацыонную лену. Это когда два
последовательных кадра занимают соседнее положение на картинке.
Потом после перегонки этой картинки в OpenGl текстуру сделай
рамочную сетку. Внутри текстуры левый верхний край - это (0,0),
а правый нижний - (1,1). (для подсказки, правый верхний край - (1,0)).
А все, что между 0 и 1 - составляет содержимое текстуры.
Тем сасым, квадрат в сетке будет из четырех вещественных чисел.
Левого верхего и правого краев кадра и левого и правого нижних краев.
Подумай, как можно из размеров кадра и всей ленты вытянуть эти
значения.

Вобщем так:

(0,0)                                       (1,0)
+-------+-------+-------+-------+
|##1##|##2##|##3##|##4##|
+-------+-------+-------+-------+
|##5##|##6##|##7##|##8##|
+-------+-------+-------+-------+
|##9##|#10##|#11##|#12##|
+-------+-------+-------+-------+
|#13##|#14##|#15##|#16##|
+-------+-------+-------+-------+
(0,1)                                       (1,1)
'+': Угол кадра
'#': Заполнение кадра


AKMTT   (2006-01-05 05:34:00) [18]

2Аццкий_рыцарь:) Не смешНО ОДНАКО.
Я серьезно спросил, как сделать анимированого персонажа, точнее как лучше делать? Все пишется на OpenGl.
Или в 3D Max'e делать модель?


Аццкий_рыцарь:)   (2006-01-05 05:31:00) [19]

ггггг смотри в этой теме и внимай, что скажут мастера. НО НИ В КОЕМ СЛУЧАЕ НЕ НАЧИНАЙ УЧИТЬ  DelphiX ! уже лучше через канвас что-то рисовать :)


Кефир87   (2006-01-05 01:20:00) [20]

"через" спрайты. да 8)


Наверх

Титульная страница Поиск, карта сайта Написать письмо