Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Поменять изображение на поверхности   Найти похожие ветки 

 
parovoZZ ©   (2005-03-26 19:09) [0]

А как поменять изображение на поверхности в Jedi_SDL? Если через пересоздание оной, то игра начинает жрать лишние ресурсы. Как быть?


 
П7   (2005-03-27 22:12) [1]

наверное лучше сделать 2 поверхности... Это я так, интуитивно, с Jedi_SDL не знаком, но там вроде DirectDraw под виндой используется...


 
parovoZZ ©   (2005-03-29 09:49) [2]

А если фоновых изображений десять, то 10 поверхностей создавать?


 
П7   (2005-03-29 12:39) [3]

А зафигом тебе 10 фоновых сразу нужны?


 
parovoZZ ©   (2005-03-29 23:07) [4]

Так вот и о чём. Есть 10 фонов, их надо менять, но как? На одну и ту же поверхность. Но после уничтожения поверхности не вся память освобождается.


 
П7   (2005-03-30 01:01) [5]

Что за чушь? Нафиг она тогда вообще такие поверхности нужны? Я не могу ответить на твой вопрос, тут скоре структурная проблема...


 
parovoZZ ©   (2005-03-31 04:24) [6]

В смысле чушь? Есть 10 картинок. На одном раунде одна картинка, на другом другая. Реализуется, но я не понимаю, почему память не освобождается.


 
parovoZZ ©   (2005-04-07 09:08) [7]

Гы. Короче, во всём оказался виноват SDL_FormatDisplay.


 
Magikan ©   (2005-04-07 10:37) [8]

Очень просто. При загрузке изображения в поверхность (через SDL_LoadBMP или IMG_Load), процедура загрузки выделяет для поверхности память. Для ее (памяти) освобождения нужно использовать SDL_FreeSurface. А затем в нее можешь загружать следующее изображение.


 
parovoZZ ©   (2005-04-07 10:58) [9]

Фича в чём была: для загрузки изображения надо применять временную поверхность : Temp := (), после чего Surface := ), а вот потом уже удалить Temp. Если делать так,  как я сперва делал: Surface := IMG_Load ()
Surface := SDL_FormatDisplay(Surface)
, то часть памяти не освобождается до конца работы программы.


 
parovoZZ ©   (2005-04-07 10:59) [10]


> после чего Surface := ),

Имелось ввиду Surface := SDL_FormatDisplay(Surface)



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

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
14-1119418202
Sandman29
2005-06-22 09:30
2005.07.18
Верите?


3-1118166512
Dorian
2005-06-07 21:48
2005.07.18
Подскажите хороший компонент построения диаграмм


14-1119870378
zunder
2005-06-27 15:06
2005.07.18
Установка D2005 на WinXPSP2


10-1094107796
AlexXn
2004-09-02 10:49
2005.07.18
MIDAS сервер


4-1116610718
seregka
2005-05-20 21:38
2005.07.18
Динамическое копирование информации в Richedit