Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: CL | DM;

Вниз

Timer с DirecxX   Найти похожие ветки 

 
Orc   (2003-08-27 09:25) [0]

Приветствую Мастеров!

Немного ламерский вопрос. Недавно начал постигать DirectX. Смысл такой: делаю меню к игре, DirectDraw не используется по определению (юзаю Direct3D). На задний план выводится фоновая картинка, отслеживается положение мыши и отрисовывается большой графический курсор (как текстура, причём делается это в одной процедуре). Требуется так затормозить вывод меню (меню должно плаааавно выезжать из-за края экрана), чтобы не тормозила отрисовка курсора. Т.е. в теории, наверное, это должно выглядеть так: ставим таймер на 0.5 секунды, если таймер не сработал отрисовываем курсор, если сработал то отрисовываем и курсор и меню + к этому инкрементируем координату для следующего вывода. Одна проблема - не может до меня дойти, как это реализовать на Делфи. Помогите, плиз! Вопрос жизни и смерти! Заранее благодарен за ответы.


 
cyborg ©   (2003-08-27 11:07) [1]

А как стыкуется неиспользование директдрау по определению и таймер?

Таймеры тут вообще не нужны, пункту меню наращиваешь координаты сверху вниз каждый игровой кадр, или каждые 2 кадра, или каждые три кадра, или каждые 4 кадра... продолжать? :)


 
Orc   (2003-08-27 12:35) [2]

2 cyborg:

Тогда встречный вопрос: а на разных по производительности машинах это дело с разной скоростью работать будет? И ещё: как считать игровые кадры?


 
TGrigory ©   (2003-08-27 13:10) [3]

>Тогда встречный вопрос: а на разных по производительности
>машинах это дело с разной скоростью работать будет? И ещё: как
>считать игровые кадры?
Введи переменную и каждый раз увеличивай ее. Примерно так

procedure Timer;
begin
inc(cadr);
//...
//это действия, которые выполняются в каждом кадре
if (cadr mod 2=0) then //действия в четных кадрах
if (cadr mod 3=0) then //действия каждый 3 кадр
//и тд.
end;


 
NailMan ©   (2003-08-27 13:46) [4]

Создай виндовый таймер CreateTimer/KillTimer(последняя функция для поиска если с названием первой я ошибся) на срабатывание скажем каждые 40 мс. В процедуре обработчика прибавляй координату к менюшке. Рендер менюшки и курсора должен быть каждый кадр, тоесть крутиться в цикле.
Собсно усе.


 
Orc   (2003-08-28 07:21) [5]

Большое спасибо всем!



Страницы: 1 вся ветка

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
14-43798
PVOzerski
2004-02-17 17:28
2004.03.14
глюк в Netscape 4.8?


14-43761
Soi
2004-02-19 11:23
2004.03.14
Глючит OUTLOOK


14-43826
военнообязанный
2004-02-21 20:47
2004.03.14
Идти на военную кафедру или нет?


14-43870
человек в сети
2004-02-05 01:01
2004.03.14
нужна дока (или исходники) о создании чата для локалки ...


4-43970
DenisWW
2004-01-08 16:37
2004.03.14
Прилипание формы