Вниз
Скачать: 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.01 c
1-56054
super_ezh
2002-10-05 13:43
2002.10.17
помогите со TStringGrid


14-56268
Shadow
2002-09-22 18:59
2002.10.17
Хмммм............


14-56273
Viktor Kushnir
2002-09-23 09:10
2002.10.17
Перепись населения Дубль2


1-56050
Gaber
2002-10-08 13:11
2002.10.17
Возможно ли в одном Label1.Caption ввести текс в 2 строки


1-56065
AM
2002-10-08 12:34
2002.10.17
Вот такой вопросец ... надо ловить события...




   Наверх