пользователей: 21204
предметов: 10449
вопросов: 177330
Конспект-online
зарегистрируйся или войди через vk.com чтобы оставить конспект.
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Программирование в интернет:
» ПИ
» ОКГТМ
» КИНФС

Завантаження та відображення зображень в DirectDraw

Загрузка изображения в DirectDraw. Загрузка изображений может происходить заранее. Например, в играх картинки загружаются на этапе загрузки уровня, а в демонстрационных программах на этапе старта программы. К тому же может понадобиться загрузки множества картинок.

Для загрузки в заглавном файле ddfunc.h добавляем описание функции:

IDirectDrawSurfасе7 * LoadBMPToSurface(LPCTSTR filename, IDirectDraw7 * ppiDD)

Функция получает два параметра: имя файла, ресурс которого загрузки и указатель на интерфейс iDirectDraw7, который понадобится для создания поверхности, куда будет загружена картинка. Как результат функция возвращает указатель на созданную поверхность.

Отображение изображений в DirectDraw позволяет убедиться, что DirectDraw инициализируется верно, а изображение загружается на поверхность правильно.

Код отображения пишется между функциями BeginPaint и EndPaint, которые сгенерировал мастер при создании программы. Сначала проверяем, существует поверхность с картинкой и является ли текущий режим полноэкранным. Если так, то копируем картинку в задний буфер с помощью функции BltFast:

Backsurf -> BltFast (0, 0, imagesurf, NULL, DDBLTFAST_WAIT) В этом методе первый и второй параметры определяют левую и верхнюю позицию, в которую нужно скопировать содержимое поверхности; третий параметр - поверхность, с которой нужно скопировать данные; четвертый - область в поверхниджерели, которую необходимо скопировать; пятый - определяет тип копирования.


17.01.2016; 23:21
хиты: 14
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2016. All Rights Reserved. помощь