Интерфейс DirectDrawPalette
Интерфейс DirectDrawPalette предназначен для работы с палитровыми видеорежимами и поверхностями. Несмотря на то что в Windows поддерживается ряд видеорежимов с глубиной пикселей менее 8 бит, DirectDraw поддерживает лишь 8-битные палитровые режимы.
Экземпляры интерфейса DirectDrawPalette создаются функцией CreatePalette() интерфейса DirectDraw. Функция CreatePalette() получает набор флагов, определяющих тип палитры.
Интерфейс DirectDrawPalette содержит всего три функции:
- GetCaps()
- GetEntries()
- SetEntries()
Для заполнения палитры используется функция SetEntries(). Содержимое палитры чаще всего берется из файла. Тем не менее значения элементов палитры можно рассчитать и занести в палитру во время выполнения программы. Функция GetEntries() возвращает значения элементов, ранее занесенных в палитру.
Экземпляры интерфейса DirectDrawPalette присоединяются к поверхности функцией SetPalette() интерфейса DirectDrawSurface. Палитровая анимация выполняется либо присоединением разных палитр к первичной поверхности, либо изменением содержимого палитры функцией SetEntries().