Форум: "Игры";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
ВнизDoubleBuffer... Найти похожие ветки
← →
X-RayMan (2003-06-12 15:02) [0]Рисую на канве панели. Когда рисую куб, т.е. 8 вершин и 12 граней, то все нормально. А когда рисую сферу 482 вершины и 960 граней заметно некоторое мограние. Насколько я знаю для устранения этого надо использовать двойную буферизацию. Может кто в двух словах об этом расскажет? Заранее благодарен.
← →
Asteroid (2003-06-12 15:52) [1]Panel1.DoubleBuffered := true;
В два слова никак не умещается, только в три.
← →
X-RayMan (2003-06-14 12:29) [2]Это конечно хорошо, но если я использую функции низкого уровня?
Типа:
var
DC: hDC;
( Panel1.Handle,Image) [2] Это конечно хорошо, но если я использую функции низкого уровня?
Типа:
var
DC: hDC;
Image: TPaintStruct;
...
DC:=BeginPaint(Panel1.Handle,Image);
...
MoveToEx(DC,0,0,nil);
LineTo(DC,300,300);
...
← →
Anatoly Podgoretsky (2003-06-14 12:37) [3]Ну так рисуй его сначала на битмапе, а потом копируй на канву
← →
Asteroid (2003-06-14 12:41) [4]Тогда:
DC := GetDC( Panel1.Handle );
MemDC := CreateCompatibleDC( DC );
MemBM := CreateCompatibleBitmap( DC, Panel1.Width, Panel1.Height );
SelectObject( MemDC, MemBM );
.
. // (операции с MemDC);
.
BitBlt( DC, 0, 0, Panel1.Width, Panel1.Height, MemDC, 0, 0, SRCCOPY );
← →
Asteroid (2003-06-14 12:42) [5]> Anatoly Podgoretsky © (14.06.03 12:37)
Я так понял очень хочется использовать "функции низкого уровня".
← →
Anatoly Podgoretsky (2003-06-14 12:48) [6]Да какие возражения, это одно и тоже, битмап и копирование.
← →
Anatoly Podgoretsky (2003-06-14 12:49) [7]А вот чего смущает, так это зачем рисовать невидимые линии.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c