5edf7c19

Палитры и форматы пикселя


DirectDraw допускает создание большого количества палитр, которые могут быть присоединены к вне экранным поверхностям. Когда это выполнено, вне экранные поверхности больше совместно не используют палитру основной поверхности. Если  создана вне экранная поверхность с форматом пикселя, отличным от основной поверхности, принимается, что аппаратные средства могут это использовать. Например, если была создана вне экранная поверхность с палитрой, в то время когда основная поверхность находится в цветном режиме с 16 битами, принимается, что blitter может преобразовывать палитровые поверхности в истинный цвет в течение операции блиттинга.

DirectDraw поддерживает создание стандартных палитровых поверхностей с 8 битами, способных к показу 256 цветов, и двух видов палитровых поверхностей с 4 битами, способных к показу 16 цветов. Первый вид  поверхности с 4 битами индексирован в истинную цветную таблицу палитры; второй вид индексирован в индексированную таблицу палитры основной поверхности. Этот второй тип палитры обеспечивает 50 процентов сжатия.

Если эти поверхности должны быть созданы, blitter должен быть способен к замене палитры в течение операции блиттинга.  При блиттинге одной  поверхности в другую, палитра игнорируется. Декодирование палитры выполнимо только к истинным цветным поверхностям, или когда палитра с 4 битами - индекс к индексу в палитре с 8 битами. Во всех других случаях, индексированная палитра - палитра адресата.

Растровые операции для палитровых поверхностей игнорируются. Изменение присоединенной палитры поверхности - очень быстрая операция. Вся три из этих поверхностей должны быть поддержаны как текстуры на 3D ускоренные аппаратные средства.



Содержание раздела