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

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

Помогите с разворотом


NightFire ©   (2004-11-29 23:15:00) 

Вот тут небольшенькая проблема есть плеер (Tplayer) вот  и надо его разворачивать под углом заданным мышкой  или клавишами. Это значит,  что надо сам рисунок ворочать, а как это сделать.?


XProger   (2004-11-30 15:07:00) [1]

Дык,

glPushMatrix;
glTranslatef(Player.X, Player.Y, 0);
glRotatef(Player.Angle, 0, 0, 1);
DrawPlayer;
glPopMatrix;

так бы это выглядело в OpenGL :)


NikeOLD   (2004-11-30 13:04:00) [2]

никак. DirectDraw не поддерживает аппаратный поворот растров, а жаль.

Извращение все это и тормоза. Хочешь, чтобы рисунок вращался - делай несколько спрайтов, заранее повернутых под разным углом. Например под углом 8-10 градусов для плавности. Т.о. у тебя будет 45-36 картинок, а дальше смотри куда мышка отклонилась от первоначальной позиции или какую клавишу нажали и меняй свою картинку. Во всех играх именно так сделано.
Много памяти, зато очень быстро, нежели 1 стационарный спрайт вертеть. А в игре важно быстродействие в первую очередь.


NightFire   (2004-11-30 10:59:00) [3]

>ну, положим, что и DX и OGL могут это делать самостоятельно по >твоему велению
>главное правильно повелеть.
Вот, а как правильно повелить в DelphiX


TButton   (2004-11-30 03:45:00) [4]

ну, положим, что и DX и OGL могут это делать самостоятельно по твоему велению
главное правильно повелеть.


XProger   (2004-11-30 00:05:00) [5]

Поворачивать рисунок...

Интересно колько в мире всего графических API существует? ;)


Наверх

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