Visual Basic - мастерская разработчика
Библиотеки

DirectX

Обзоры
DirectDraw
Direct3D
DirectX Audio
DirectPlay
DirectInput
Fido Topics
SourceCode
Tools&Libs

OpenGL

Статьи и учебники
Fido Topics
SourceCode
Tools&Libs

Архив по Glide

Движки

Обзоры
Учебники
SourceCode
Downloads

Создание игр

Ваши игры

Обзорные статьи
Учебники
Fido Topics
SourceCode
Download

Stuff

Программер-Чат

Псевдо-FTP
Disclaimer
Оффтопик

 

Установка палитр

"Теория DirectDraw"


Палитры могут быть установлены для любой палетизированой поверхности (главной поверхности, заднего буфера, оффскринных поверхностей или буферов для текстур). Только палитры, установленные для главной поверхности будут воздействовать на системную палитру. Это важно, потому что когда DirectDraw совершает блиттинг, он никогда не производит изменение цветов. Любые палитры, установленные для источника или цели блиттинга игнорируются. Палитры неглавных поверхностей предназначены для использования Direct3D приложений.

Палитры могут использоваться одновременно множеством поверхностей. Одна и та же палитра может быть установлена для главной поверхности и задних буферов в цепи флиппинга или быть распределена между множеством поверхностей для текстур.

Когда приложение устанавливает палитру для поверхности методом IDirectDrawSurface7::SetPalette (DirectDrawSurface7.SetPalette), счетчик количества копий палитры увеличивается. Когда счетчик поверхности уменьшится до 0, то есть поверхность уничтожится, счетчик копий палитры уменьшается на единицу. Также он уменьшается, когда палитра открепляется от поверхности, путем передачи Nothing при вызове SetPalette. Когда счетчик копий палитры достигнет 0, объект палитры уничтожается.

Если метод IDirectDrawSurface7::SetPalette (DirectDrawSurface7.SetPalette) вызывается несколько раз с указателями на те же поверхности и на те же палитры, счетчик копий палитры увеличивается только один раз. Все последующие подобные вызовы не влияют на счетчик.

Posted: 23.01.2k1
Autor: Antiloop
<anti_loop@mail.ru>

 


Проект
Создание Народного Учебника по OpenGL

Участвовать!
Поиск
Найдите статью или файл:


Рассылка
Новости сайта
La Vision в вашем почтовом ящике








Программирование на С++ Delphi и Паскаль
Центр демо-искусства в России