Форум: "Основная";
Текущий архив: 2002.10.17;
Скачать: [xml.tar.bz2];
ВнизАльтернатива 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c