Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.029 c
1-56117
blackman
2002-10-08 10:38
2002.10.17
Ежедневный гороскоп. Козерог.


1-56133
Dmitriy _need the help
2002-10-05 23:52
2002.10.17
ловушка


1-56211
AFrolov
2002-10-07 17:45
2002.10.17
как узнать доступен ли для приложения COM объект


4-56423
mastervigo
2002-09-02 20:53
2002.10.17
Автоподбор ширины в ячейках Excel


3-55990
SZap
2002-09-25 12:59
2002.10.17
Поиск компонент...