Вниз
Скачать: CL | DM;

Утечка памяти   Найти похожие ветки 

← →
Proger ©   (2004-10-27 19:22) [0]

Вот игру делаю, c API только начинаю работать.Каждую
секунду потребление оперативки игрой растёт на 64 - 128 Кб(зависит от кол-ва созданных движком Bitmap"ов).
 Если отключить блиттинг главного буфера в окно, тогда нормально
всё(???)
 Вот кусок кода обновления кадра:
begin
 ...
 PatBlt(GetDc(hWnd), 0, 0, W, H, BLACKNESS)
 ...
 BitBlt(GetDc(hWnd), ... , Buf.canvas.handle, ... , SRCCOPY);
 BitBlt(GetDc(hWnd), ... , ExBuf.canvas.handle, ..., SRCCOPY);
end;
 Формат пиксела Buf = pfDevice, ExBuf = pf24bit;
 Выручайте мастера!!Заранее всем спасибо.


← →
clickmaker ©   (2004-10-27 20:34) [1]


> PatBlt(GetDc(hWnd), 0, 0, W, H, BLACKNESS)

а ReleaseDC кто делать будет?


← →
tesseract   (2004-10-28 09:38) [2]

Да и зачем каждый раз GetDC? выделение памяти - задача тормозная.. очень тормозная...


← →
Proger ©   (2004-10-28 17:14) [3]

2 clickmaker ©.По подробней если можно...
2 tesseract.А есть другой способ?


← →
марсианин ©   (2004-10-28 18:13) [4]



HDC dc = GetDC(hWnd);
PatBlt(dc, 0, 0, W, H, BLACKNESS)
...
BitBlt(dc, ... , Buf.canvas.handle, ... , SRCCOPY);
BitBlt(dc, ... , ExBuf.canvas.handle, ..., SRCCOPY);
...

ReleaseDC(hWnd, dc);


← →
марсианин ©   (2004-10-28 18:15) [5]

извини, в последнее время много на с++ приходится
первая строчка

var dc:HDC;
...
dc := GetDC(hWnd);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.032 c
4-1099037024
zsv
2004-10-29 12:03
2004.12.12
Двоичный параметр


1-1101423144
Rand
2004-11-26 01:52
2004.12.12
Необязательные параметры


14-1101104384
Sash
2004-11-22 09:19
2004.12.12
w98 wxp


11-1083996308
fr!
2004-05-08 10:05
2004.12.12
как поймать message?


1-1101826657
Павел
2004-11-30 17:57
2004.12.12
Таймер в многопоточном приложение




   Наверх