RGB-маски в DirectDraw-PixelFormat
От: lordsiberian  
Дата: 05.12.03 18:59
Оценка:
Добрый вечер!

Ерунда какая-то, однако...
Директ Дро дает в PixelFormat следующие RGB-маски:
TrueColor
RedMask = 00FF0000
GreenMask = 0000FF00
BlueMask = 000000FF
HighColor
RedMask = 0000F800
GreenMask = 000007E0
BlueMask = 0000001F

То есть, цвета якобы идут в прямом формате — RGB. При прямой же работе с поверхностью обнаруживается, что писать цвета надо в обратном формате — BGR. Это глюк, или так и должно быть?

Версия ДХ — 8 или старше, чипсет — Intel i740.

Заранее спасибо.
Re: RGB-маски в DirectDraw-PixelFormat
От: Hacker_Delphi Россия  
Дата: 06.12.03 14:34
Оценка:
Здравствуйте, lordsiberian, Вы писали:

L>То есть, цвета якобы идут в прямом формате — RGB. При прямой же работе с поверхностью обнаруживается, что писать цвета надо в обратном формате — BGR. Это глюк, или так и должно быть?

нет... это — не глюк... это — архитектура IBM PC...
вот есть у нас двойное слово в памяти: 00RRGGBB... а байты будут лежать так:
BB GG RR 00...
... << RSDN@Home 1.1.2 beta 1 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.