Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.07 c
3-1100171384
Fyc
2004-11-11 14:09
2004.12.12
Проблемка с Table.FindNearest и русским тексом


9-1092384941
pavel_pavel
2004-08-13 12:15
2004.12.12
Инвентарь в игре


1-1101723610
WondeRu
2004-11-29 13:20
2004.12.12
Интерфейс объявляется как класс!??? Эт как?


14-1101138906
Dok_3D
2004-11-22 18:55
2004.12.12
Выборы..


1-1101551535
Артем Владимирович
2004-11-27 13:32
2004.12.12
Как стереть самого себя





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский