Главная страница
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.017 c
6-56257
star
2002-08-15 22:11
2002.10.17
Как работать с почтой?


1-56215
kofman
2002-10-06 15:50
2002.10.17
Из-за чего может появлятся окно с надписью


1-56209
Cowboy Huggies :)
2002-10-07 19:33
2002.10.17
как получить денежный формат из настроек Win


6-56263
Елена
2002-08-16 07:27
2002.10.17
Вопрос по FAQ (раздел


3-55995
Nurba
2002-09-26 11:38
2002.10.17
Как осуществить поиск данных в базе?