Вниз
Скачать: CL | DM;

Альтернатива TTimer   Найти похожие ветки 

 
Max2 ©   (2002-10-07 08:59) [0]

Пишу игрушку Xonix (если кто помнит такая старенькая была). Движение шаров реализовываю через интервал TTimer`а. При большом количестве шаров на медленной машине (Cel 800 !!!) двигаться начинают ощутимо медленнее. Подскажите, чем можно заменить??


 
MBo ©   (2002-10-07 09:07) [1]

Дело, возможно, и не в таймере, а в алгоритме.
Если нужен таймер с меньшим минимальным интервалом, можно попробовать TimeSetEvent


 
Max2 ©   (2002-10-07 09:15) [2]

Вообще выполнение операций у меня довольно таки помоему нехитрое. Я анализирую следующие 3 координаты по направлению движения шара; стираю предыдыщее положение шара и отрисовываю текущее. Беда только в том, что все шары (вместе с курсором) у меня двигаются по одному таймеру. Есть ли смысл для create каждого шара креэйтить для него собственный таймер ??


 
MBo ©   (2002-10-07 09:17) [3]

>Есть ли смысл для create каждого шара креэйтить для него собственный таймер ??
Нет, надо обходиться одним. Видимо, долго считается-прорисовывается. Как стираешь предыдущее?


 
Max2 ©   (2002-10-07 09:22) [4]

Просто беру и закрашиваю его тем же цветом, что и фон моего битмапа...

procedure TBall.Brush_ball_erase(prior_x_ball_coord,prior_y_ball_coord:integer; BTM:TBitMap);
begin
BTM.Canvas.Pen.Color := $00E5E5E5;
BTM.Canvas.Brush.Color := $00E5E5E5;
BTM.Canvas.Ellipse(prior_x_ball_coord-9,prior_Y_ball_coord-9,prior_X_ball_coord+9,prior_Y_ball_coord+9);
end;



 
int64 ©   (2002-10-07 09:43) [5]

Шары, наверное, по ходу движения в каждом пикселе рисуются?


 
Max2 ©   (2002-10-07 09:52) [6]

Неа, шаг через 3 пикселя



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
7-56379
Чертен0К™
2002-08-05 23:47
2002.10.17
Расшарить диск.


1-56122
Story_men
2002-10-08 15:29
2002.10.17
Компоненты VCL позволяющие анимировать показ панелей.


14-56338
Ag2002
2002-09-25 19:22
2002.10.17
Установка


7-56360
Filat
2002-08-08 14:14
2002.10.17
Генератор телевизионных сигналов. Есть ли готовый (free) ?


3-55959
Старик
2002-09-23 16:36
2002.10.17
SQL




   Наверх