структура DDCAPS_DX3 (ddraw.h)
Структура DDCAPS представляет возможности оборудования, доступного через объект DirectDraw. Эта структура содержит структуру DDSCAPS2, используемую в данном контексте для описания типов объектов DirectDrawSurface, которые можно создать. Одновременное создание всех поверхностей, описанных этими возможностями, может оказаться невозможным. Эта структура используется с методом IDirectDraw7::GetCaps .
Файл заголовка Ddraw.h содержит несколько версий этой структуры (например, DDCAPS_DX7). Дополнительные сведения о том, как определить используемую версию, см. в разделе Примечания.
Синтаксис
typedef struct _DDCAPS_DX3 {
DWORD dwSize;
DWORD dwCaps;
DWORD dwCaps2;
DWORD dwCKeyCaps;
DWORD dwFXCaps;
DWORD dwFXAlphaCaps;
DWORD dwPalCaps;
DWORD dwSVCaps;
DWORD dwAlphaBltConstBitDepths;
DWORD dwAlphaBltPixelBitDepths;
DWORD dwAlphaBltSurfaceBitDepths;
DWORD dwAlphaOverlayConstBitDepths;
DWORD dwAlphaOverlayPixelBitDepths;
DWORD dwAlphaOverlaySurfaceBitDepths;
DWORD dwZBufferBitDepths;
DWORD dwVidMemTotal;
DWORD dwVidMemFree;
DWORD dwMaxVisibleOverlays;
DWORD dwCurrVisibleOverlays;
DWORD dwNumFourCCCodes;
DWORD dwAlignBoundarySrc;
DWORD dwAlignSizeSrc;
DWORD dwAlignBoundaryDest;
DWORD dwAlignSizeDest;
DWORD dwAlignStrideAlign;
DWORD dwRops[DD_ROP_SPACE];
DDSCAPS ddsCaps;
DWORD dwMinOverlayStretch;
DWORD dwMaxOverlayStretch;
DWORD dwMinLiveVideoStretch;
DWORD dwMaxLiveVideoStretch;
DWORD dwMinHwCodecStretch;
DWORD dwMaxHwCodecStretch;
DWORD dwReserved1;
DWORD dwReserved2;
DWORD dwReserved3;
DWORD dwSVBCaps;
DWORD dwSVBCKeyCaps;
DWORD dwSVBFXCaps;
DWORD dwSVBRops[DD_ROP_SPACE];
DWORD dwVSBCaps;
DWORD dwVSBCKeyCaps;
DWORD dwVSBFXCaps;
DWORD dwVSBRops[DD_ROP_SPACE];
DWORD dwSSBCaps;
DWORD dwSSBCKeyCaps;
DWORD dwSSBFXCaps;
DWORD dwSSBRops[DD_ROP_SPACE];
DWORD dwReserved4;
DWORD dwReserved5;
DWORD dwReserved6;
} DDCAPS_DX3;
Члены
dwSize
Размер структуры в байтах. Этот элемент необходимо инициализировать перед использованием структуры.
dwCaps
Это значение состоит из одного или нескольких из следующих флагов, определяющих возможности оборудования и драйвера.
DDCAPS_3D
Оборудование дисплея имеет трехмерное ускорение.
DDCAPS_ALIGNBOUNDARYDEST
DirectDraw поддерживает только те прямоугольники назначения наложения с осью X, выровненной по границам dwAlignBoundaryDest поверхности.
DDCAPS_ALIGNBOUNDARYSRC
DirectDraw поддерживает только те наложения исходных прямоугольников с осью X, выровненной по границам dwAlignBoundarySrc поверхности.
DDCAPS_ALIGNSIZEDEST
DirectDraw поддерживает только те прямоугольники назначения наложения, размеры оси X которых в пикселях являются кратными dwAlignSizeDest .
DDCAPS_ALIGNSIZESRC
DirectDraw поддерживает только те прямоугольники источника наложения, размеры оси X которых в пикселях являются кратными dwAlignSizeSrc .
DDCAPS_ALIGNSTRIDE
DirectDraw создает поверхности памяти дисплея с выравниванием шага, равным значению dwAlignStrideAlign .
DDCAPS_ALPHA
Оборудование дисплея поддерживает поверхности только альфа-канала.
DDCAPS_BANKSWITCHED
Оборудование дисплея переключается на банк и потенциально очень медленно при случайном доступе к памяти дисплея.
DDCAPS_BLT
Оборудование дисплея может выполнять операции передачи битовых блоков (bitblt).
DDCAPS_BLTCOLORFILL
Оборудование дисплея может заполнять цвет с помощью блитера.
DDCAPS_BLTDEPTHFILL
Оборудование дисплея может заполнять z-буферы глубиной с помощью блитера.
DDCAPS_BLTFOURCC
Оборудование дисплея может преобразовывая цветовая область во время операций bitblt.
DDCAPS_BLTQUEUE
Оборудование для отображения может выполнять асинхронные операции bitblt.
DDCAPS_BLTSTRETCH
Оборудование дисплея может растягиваться во время операций bitblt.
DDCAPS_CANBLTSYSMEM
Оборудование дисплея может переливать в системную память или из нее.
DDCAPS_CANCLIP
Оборудование дисплея может обрезки с разрезанием.
DDCAPS_CANCLIPSTRETCHED
Оборудование дисплея может отсеивать при растягивание.
DDCAPS_COLORKEY
Поддерживает некоторые формы цветового ключа в операциях наложения или bitblt. Более конкретные сведения о возможностях цветовых ключей можно найти в элементе dwCKeyCaps .
DDCAPS_COLORKEYHWASSIST
Цветовая клавиша частично поддерживается оборудованием. Это означает, что могут использоваться другие ресурсы (ЦП или видеопамяти). Если этот бит не задан, будет включена полная поддержка оборудования.
DDCAPS_GDI
Оборудование для отображения используется совместно с GDI.
DDCAPS_NOHARDWARE
Аппаратное обеспечение не поддерживается.
DDCAPS_OVERLAY
Оборудование дисплея поддерживает наложения.
DDCAPS_OVERLAYCANTCLIP
Оборудование дисплея поддерживает наложения, но не может обрезать их.
DDCAPS_OVERLAYFOURCC
Оборудование наложения может преобразовании цветового пространства во время операций наложения.
DDCAPS_OVERLAYSTRETCH
Оборудование наложения способно растягивать. Члены dwMinOverlayStretch и dwMaxOverlayStretch содержат допустимые данные.
DDCAPS_PALETTE
DirectDraw позволяет создавать и поддерживать объекты DirectDrawPalette для поверхностей, отличных от основной.
DDCAPS_PALETTEVSYNC
DirectDraw может обновлять палитру, синхронизированную с вертикальным обновлением.
DDCAPS_READSCANLINE
Оборудование дисплея может возвращать текущую строку сканирования.
DDCAPS_VBI
Оборудование для отображения может создавать пустое вертикальное прерывание.
DDCAPS_ZBLTS
Поддерживает использование z-буферов с операциями bitblt.
DDCAPS_ZOVERLAYS
Поддерживает использование метода IDirectDrawSurface7::UpdateOverlayZOrder в качестве z-значения для наложения для управления их наслоением.
dwCaps2
Это значение состоит из одного или нескольких следующих флагов, указывающих дополнительные возможности оборудования и драйверов.
DDCAPS2_AUTOFLIPOVERLAY
Наложение можно автоматически переворачивать на следующую поверхность в цепочке переворачивания каждый раз, когда возникает видеопорт VSYNC, что позволяет видеопорту и наложению дважды буферировать видео без дополнительных затрат на ЦП. Этот параметр действителен, только если surface получает данные из видеопорта. Если данные видеопорта неинтерлейсированы или неинтерпретированы, они переворачиваются на каждом VSYNC. Если данные чередуются в памяти, они переворачиваются на всех остальных VSYNC.
DDCAPS2_CANBOBHARDWARE
Оборудование наложения может отображать каждое поле чередующегося видеопотока по отдельности.
DDCAPS2_CANBOBINTERLEAVED
Оборудование наложения может отображать каждое поле чередующегося видеопотока по отдельности, пока оно чередуется в памяти, не вызывая никаких артефактов, которые обычно могут возникать без специальной аппаратной поддержки. Этот параметр действителен, только если поверхность получает данные из видеопорта и видео масштабируется по крайней мере в два раза в вертикальном направлении.
DDCAPS2_CANBOBNONINTERLEAVED
Оборудование наложения может отображать каждое поле чередующегося видеопотока по отдельности, не чередуясь в памяти без каких-либо артефактов, которые обычно могут возникать без специальной аппаратной поддержки. Этот параметр действителен, только если поверхность получает данные из видеопорта и видео масштабируется по крайней мере в два раза в вертикальном направлении.
DDCAPS2_CANCALIBRATEGAMMA
В системе установлен калибратор, который может автоматически настроить гамма-рампу, чтобы результат был одинаковым во всех системах с калибратором. Чтобы вызвать калибратор при задании новых гамма-уровней, используйте флаг DDSGR_CALIBRATE при вызове метода IDirectDrawGammaControl::SetGammaRamp . Калибровка гамма-пандусов влечет за собой некоторые затраты на обработку и не должна использоваться часто.
DDCAPS2_CANDROPZ16BIT
Шестнадцать битовых значений RGBZ можно преобразовать в 16-разрядные значения RGB. (Система не поддерживает 8-разрядные преобразования.)
DDCAPS2_CANFLIPODDEVEN
Драйвер способен выполнять нечетные и четные операции переворачивания, как указано в флагах DDFLIP_ODD и DDFLIP_EVEN, которые используются с методом IDirectDrawSurface7::Flip .
DDCAPS2_CANMANAGETEXTURE
Диспетчер текстур Direct3D использует эту возможность, чтобы решить, следует ли помещать управляемые поверхности в нелокальную видеопамять. Если эта возможность задана, диспетчер текстур помещает управляемые поверхности в нелокальную видеопамять. Драйверы, которые не могут текстурировать данные из локальной видеопамять, не должны задавать эту возможность.
DDCAPS2_CANRENDERWINDOWED
Драйвер может выполнять отрисовку в оконном режиме.
DDCAPS2_CERTIFIED
Оборудование для отображения сертифицировано.
DDCAPS2_COLORCONTROLPRIMARY
Основная поверхность содержит элементы управления цветом (например, гамма).
DDCAPS2_COLORCONTROLOVERLAY
Поверхность наложения содержит элементы управления цветом (например, яркость и резкость).
DDCAPS2_COPYFOURCC
Драйвер поддерживает разрезание любой поверхности FOURCC на другую поверхность того же FOURCC.
DDCAPS2_FLIPINTERVAL
Драйвер отвечает на флаги DDFLIP_INTERVAL*. (Дополнительные сведения об этих флагах см. в разделе IDirectDrawSurface7::Flip).
DDCAPS2_FLIPNOVSYNC
Драйвер реагирует на флаг DDFLIP_NOVSYNC (дополнительные сведения об этом флаге см. в разделе IDirectDrawSurface7::Flip).
DDCAPS2_NO2DDURING3DSCENE
Двумерные операции, такие как IDirectDrawSurface7::Blt и IDirectDrawSurface7::Lock , не могут выполняться на любых поверхностях, используемых Direct3D между вызовами методов BeginScene и EndScene .
DDCAPS2_NONLOCALVIDMEM
Драйвер дисплея поддерживает поверхности в нелокальной видеопамять.
DDCAPS2_NONLOCALVIDMEMCAPS
Возможности Bitblt для нелокальных поверхностей видеопамять отличаются от локальных поверхностей видеопамять. Если этот флаг присутствует, также присутствует флаг DDCAPS2_NONLOCALVIDMEM.
DDCAPS2_NOPAGELOCKREQUIRED
Операции bitblt DMA поддерживаются на поверхностях системной памяти, которые не заблокированы на страницах.
DDCAPS2_PRIMARYGAMMA
Поддерживает динамические гамма-пандусы для основной поверхности.
DDCAPS2_STEREO
Новые возможности для DirectX 7.0. Включает бит dwSVCaps для поддержки стереорежимов. Драйвер может делать стерео по крайней мере в одном режиме, отличном от текущего. Приложение может использовать IDirectDraw7::GetDisplayMode или IDirectDraw7::EnumDisplayModes для получения стереоинформации для каждого режима.
DDCAPS2_TEXMANINNONLOCALVIDMEM
Новые возможности для DirectX 7.0. Диспетчер текстур Direct3D использует эту возможность, чтобы решить, следует ли помещать управляемые поверхности в нелокальную видеопамять. Если эта возможность задана, диспетчер текстур помещает управляемые поверхности в нелокальную видеопамять. Драйверы, которые не могут текстурировать данные из локальной видеопамять, не должны задавать эту возможность.
DDCAPS2_VIDEOPORT
Оборудование дисплея поддерживает видеотрансляций.
DDCAPS2_WIDESURFACES
Поверхность дисплея поддерживает поверхности шире, чем основная поверхность.
dwCKeyCaps
Это значение состоит из одного или нескольких следующих флагов, определяющих возможности цветового ключа.
DDCKEYCAPS_DESTBLT
Поддерживает прозрачное разрезание с помощью клавиши цвета, которая определяет заменяемые биты целевой поверхности для цветов RGB.
DDCKEYCAPS_DESTBLTCLRSPACE
Поддерживает прозрачное разрезание с цветовым пространством, определяющим заменяемые биты целевой поверхности для цветов RGB.
DDCKEYCAPS_DESTBLTCLRSPACEYUV
Поддерживает прозрачное разрезание с цветовой областью, которая определяет заменяемые биты целевой поверхности для цветов YUV.
DDCKEYCAPS_DESTBLTYUV
Поддерживает прозрачное выделение с помощью клавиши цвета, которая определяет заменяемые биты целевой поверхности для цветов YUV.
DDCKEYCAPS_DESTOVERLAY
Поддерживает наложение с использованием цветовых ключей заменяемых битов целевой поверхности, наложенных для цветов RGB.
DDCKEYCAPS_DESTOVERLAYCLRSPACE
Поддерживает цветовое пространство в качестве ключа цвета для назначения цветов RGB.
DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV
Поддерживает цветовое пространство в качестве ключа цвета для назначения цветов YUV.
DDCKEYCAPS_DESTOVERLAYONEACTIVE
Поддерживает только одно активное значение ключа цвета назначения для видимых поверхностей наложения.
DDCKEYCAPS_DESTOVERLAYYUV
Поддерживает наложение с использованием цветовых ключей заменяемых битов целевой поверхности, наложенных на цвета YUV.
DDCKEYCAPS_NOCOSTOVERLAY
Указывает, что для использования цветового ключа с наложением нет компромиссов пропускной способности.
DDCKEYCAPS_SRCBLT
Поддерживает прозрачное разрезание с использованием ключа цвета для источника с этой поверхностью для цветов RGB.
DDCKEYCAPS_SRCBLTCLRSPACE
Поддерживает прозрачное разрезание, используя цветовое пространство для источника с этой поверхностью для цветов RGB.
DDCKEYCAPS_SRCBLTCLRSPACEYUV
Поддерживает прозрачное выделение, используя цветовое пространство для источника с этой поверхностью для цветов YUV.
DDCKEYCAPS_SRCBLTYUV
Поддерживает прозрачное разрезание с использованием ключа цвета для источника с этой поверхностью для цветов YUV.
DDCKEYCAPS_SRCOVERLAY
Поддерживает наложение с использованием ключа цвета для источника с этой поверхностью наложения для цветов RGB.
DDCKEYCAPS_SRCOVERLAYCLRSPACE
Поддерживает наложение, используя цветовое пространство в качестве ключа исходного цвета для поверхности наложения для цветов RGB.
DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV
Поддерживает наложение, используя цветовое пространство в качестве ключа исходного цвета для поверхности наложения для цветов YUV.
DDCKEYCAPS_SRCOVERLAYONEACTIVE
Поддерживает только одно активное значение ключа цвета источника для видимых поверхностей наложения.
DDCKEYCAPS_SRCOVERLAYYUV
Поддерживает наложение с использованием ключа цвета для источника с этой поверхностью наложения для цветов YUV.
dwFXCaps
Это значение состоит из одного или нескольких следующих флагов, определяющих возможности растяжения драйвера и эффектов.
DDFXCAPS_BLTALPHA
Поддерживает операции bitblt с альфа-смесью.
DDFXCAPS_BLTARITHSTRETCHY
Использует арифметические операции, а не методы удвоения пикселей для растяжения и сжатия поверхностей во время операции bitblt. Происходит вдоль оси Y (по вертикали).
DDFXCAPS_BLTARITHSTRETCHYN
Использует арифметические операции, а не методы удвоения пикселей для растяжения и сжатия поверхностей во время операции bitblt. Происходит вдоль оси Y (по вертикали) и работает только для растяжения целых чисел (×1, ×2 и т. д.).
DDFXCAPS_BLTFILTER
Драйвер может выполнять фильтрацию поверхностной реконструкции для искрометных битов.
DDFXCAPS_BLTMIRRORLEFTRIGHT
Поддерживает зеркальное отображение слева направо в операции bitblt.
DDFXCAPS_BLTMIRRORUPDOWN
Поддерживает зеркальное отображение сверху вниз в операции bitblt.
DDFXCAPS_BLTROTATION
Поддерживает произвольный поворот в операции bitblt.
DDFXCAPS_BLTROTATION90
Поддерживает повороты на 90 градусов в операции bitblt.
DDFXCAPS_BLTSHRINKX
Поддерживает произвольное сжатие поверхности вдоль оси X (горизонтально). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSHRINKXN
Поддерживает целочисленное сжатие (×1, ×2 и т. д.) поверхности вдоль оси X (горизонтально). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSHRINKY
Поддерживает произвольное сжатие поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSHRINKYN
Поддерживает целочисленное сжатие (×1, ×2 и т. д.) поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSTRETCHX
Поддерживает произвольное растяжение поверхности вдоль оси X (по горизонтали). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSTRETCHXN
Поддерживает целочисленное растяжение (×1, ×2 и т. д.) поверхности вдоль оси X (горизонтально). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSTRETCHY
Поддерживает произвольное растяжение поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTSTRETCHYN
Поддерживает целочисленное растяжение (×1, ×2 и т. д.) поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для операций bitblt.
DDFXCAPS_BLTTRANSFORM
Поддерживает геометрические преобразования (или перекосы) для разрезных спрайтов. Преобразования в настоящее время не поддерживаются для явных операций bitblt.
DDFXCAPS_OVERLAYALPHA
Поддерживает альфа-смешивание для поверхностей наложения.
DDFXCAPS_OVERLAYARITHSTRETCHY
Для растяжения и сжатия поверхностей наложения используются арифметические операции, а не методы удвоения пикселей. Происходит вдоль оси Y (по вертикали).
DDFXCAPS_OVERLAYARITHSTRETCHYN
Для растяжения и сжатия поверхностей наложения используются арифметические операции, а не методы удвоения пикселей. Происходит вдоль оси Y (по вертикали) и работает только для целочисленного растяжения (×1, ×2 и т. д.).
DDFXCAPS_OVERLAYFILTER
Поддерживает фильтрацию поверхностной реконструкции для извещенных спрайтов наложения. В настоящее время фильтрация не поддерживается для явно отображаемых поверхностей наложения (отображаемых с вызовами IDirectDrawSurface7::UpdateOverlay).
DDFXCAPS_OVERLAYMIRRORLEFTRIGHT
Поддерживает зеркальное отображение наложения по вертикальной оси.
DDFXCAPS_OVERLAYMIRRORUPDOWN
Поддерживает зеркальное отображение наложения по горизонтальной оси.
DDFXCAPS_OVERLAYSHRINKX
Поддерживает произвольное сжатие поверхности вдоль оси X (горизонтально). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; Оно не указывает, что сжатие доступно.
DDFXCAPS_OVERLAYSHRINKXN
Поддерживает целочисленное сжатие (×1, ×2 и т. д.) поверхности вдоль оси X (горизонтально). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; Оно не указывает, что сжатие доступно.
DDFXCAPS_OVERLAYSHRINKY
Поддерживает произвольное сжатие поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; Оно не указывает, что сжатие доступно.
DDFXCAPS_OVERLAYSHRINKYN
Поддерживает целочисленное сжатие (×1, ×2 и т. д.) поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; Оно не указывает, что сжатие доступно.
DDFXCAPS_OVERLAYSTRETCHX
Поддерживает произвольное растяжение поверхности вдоль оси X (по горизонтали). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; оно не указывает на то, что растягивание доступно.
DDFXCAPS_OVERLAYSTRETCHXN
Поддерживает целочисленное растяжение (×1, ×2 и т. д.) поверхности вдоль оси X (горизонтально). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; оно не указывает на то, что растягивание доступно.
DDFXCAPS_OVERLAYSTRETCHY
Поддерживает произвольное растяжение поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; оно не указывает на то, что растягивание доступно.
DDFXCAPS_OVERLAYSTRETCHYN
Поддерживает целочисленное растяжение (×1, ×2 и т. д.) поверхности вдоль оси Y (по вертикали). Этот флаг действителен только для DDSCAPS_OVERLAY поверхностей. Этот флаг указывает только возможности поверхности; оно не указывает на то, что растягивание доступно.
DDFXCAPS_OVERLAYTRANSFORM
Поддерживает геометрические преобразования (или перекосы) для спрайтов наложения. Преобразования в настоящее время не поддерживаются для явно отображаемых поверхностей наложения (отображаемых с вызовами IDirectDrawSurface7::UpdateOverlay).
dwFXAlphaCaps
Это значение состоит из одного или нескольких следующих флагов, указывающих возможности альфа-канала драйвера.
DDFXALPHACAPS_BLTALPHAEDGEBLEND
Поддерживает альфа-смешивание по краю исходной поверхности с цветовой клавишей. Используется для операций bitblt.
DDFXALPHACAPS_BLTALPHAPIXELS
Поддерживает альфа-данные в формате пикселей. Битовая глубина альфа-информации в формате пикселей может быть 1, 2, 4 или 8. Альфа-значение становится все более непрозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью прозрачным значением. Используется для операций bitblt.
DDFXALPHACAPS_BLTALPHAPIXELSNEG
Поддерживает альфа-данные в формате пикселей. Битовая глубина альфа-информации в формате пикселей может быть 1, 2, 4 или 8. Альфа-значение становится более прозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью непрозрачным значением. Этот флаг можно использовать только в том случае, если задано DDCAPS_ALPHA. Используется для операций bitblt.
DDFXALPHACAPS_BLTALPHASURFACES
Поддерживает поверхности только альфа-канала. Битовая глубина поверхности только альфа-канала может быть 1, 2, 4 или 8. Альфа-значение становится более непрозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью прозрачным значением. Используется для операций bitblt.
DDFXALPHACAPS_BLTALPHASURFACESNEG
Указывает, что альфа-канал становится более прозрачным по мере увеличения альфа-значения. Глубина альфа-канала может быть 1, 2, 4 или 8. Независимо от глубины альфа-информации, 0 всегда является полностью непрозрачным значением. Этот флаг можно установить, только если задано DDCAPS_ALPHA. Используется для операций bitblt.
DDFXALPHACAPS_OVERLAYALPHAEDGEBLEND
Поддерживает альфа-смешивание по краю исходной поверхности с цветовой клавишей. Используется для наложения.
DDFXALPHACAPS_OVERLAYALPHAPIXELS
Поддерживает альфа-информацию в формате пикселей. Битовая глубина альфа-информации в формате пикселей может быть 1, 2, 4 или 8. Альфа-значение становится более непрозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью прозрачным значением. Используется для наложения.
DDFXALPHACAPS_OVERLAYALPHAPIXELSNEG
Поддерживает альфа-информацию в формате пикселей. Битовая глубина альфа-информации в формате пикселей может быть 1, 2, 4 или 8. Альфа-значение становится более прозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью непрозрачным значением. Этот флаг можно использовать, только если задано DDCAPS_ALPHA. Используется для наложения.
DDFXALPHACAPS_OVERLAYALPHASURFACES
Поддерживает поверхности только альфа-канала. Битовая глубина поверхности только альфа-канала может быть 1, 2, 4 или 8. Альфа-значение становится более непрозрачным по мере увеличения альфа-значения. Независимо от глубины альфа-информации, 0 всегда является полностью прозрачным значением. Используется для наложения.
DDFXALPHACAPS_OVERLAYALPHASURFACESNEG
Указывает, что альфа-канал становится более прозрачным по мере увеличения альфа-значения. Глубина данных альфа-канала может быть 1, 2, 4 или 8. Независимо от глубины альфа-информации, 0 всегда является полностью непрозрачным значением. Этот флаг можно использовать, только если задано DDCAPS_ALPHA. Используется для наложения.
dwPalCaps
Это значение состоит из одного или нескольких следующих флагов, определяющих возможности палитры.
DDPCAPS_1BIT
Поддерживает палитры, содержащие 1-битовые записи цвета (два цвета).
DDPCAPS_2BIT
Поддерживает палитры, содержащие 2-разрядные записи цвета (четыре цвета).
DDPCAPS_4BIT
Поддерживает палитры, содержащие 4-разрядные записи цвета (16 цветов).
DDPCAPS_8BIT
Поддерживает палитры, содержащие 8-разрядные записи цвета (256 цветов).
DDPCAPS_8BITENTRIES
Задает индекс для 8-битового индекса цвета. Это поле допустимо только при использовании с возможностью DDPCAPS_1BIT, DDPCAPS_2BIT или DDPCAPS_4BIT и если целевая поверхность составляет 8 бит на пиксель (bpp). Каждая запись цвета имеет длину 1 байт и является индексом палитры 8 bpp на целевой поверхности.
DDPCAPS_ALPHA
Поддерживает палитры, включающие альфа-компонент. Для палитр с поддержкой альфа член peFlags каждой структуры PALETTEENTRY , содержащейся в палитре, должен интерпретироваться как одно 8-битовое альфа-значение (в дополнение к данным цвета в элементах peRed, peGreen и peBlue ). Палитра, созданная с этим флагом, может быть прикреплена только к поверхности текстуры.
DDPCAPS_ALLOW256
Поддерживает палитры, в которых могут быть определены все 256 записей.
DDPCAPS_PRIMARYSURFACE
Палитра присоединяется к основной поверхности. Изменение палитры немедленно влияет на отображение, если только не указана и не поддерживается возможность DDPCAPS_VSYNC.
DDPCAPS_PRIMARYSURFACELEFT
Палитра прикрепляется к основной поверхности слева. Изменение палитры немедленно влияет на отображение, если только не указана и не поддерживается возможность DDPCAPS_VSYNC.
DDPCAPS_VSYNC
Палитру можно изменять синхронно с частотой обновления монитора.
dwSVCaps
Это значение состоит из одного или нескольких следующих флагов, определяющих возможности стерео-зрения.
DDSVCAPS_RESERVED1, DDSVCAPS_RESERVED2, DDSVCAPS_RESERVED3, DDSVCAPS_RESERVED4
Зарезервированные флаги.
DDSVCAPS_STEREOSEQUENTIAL
Новые возможности для DirectX 7.0. Драйвер может делать стерео по крайней мере в одном режиме, отличном от текущего. Приложение может использовать IDirectDraw7::GetDisplayMode или IDirectDraw7::EnumDisplayModes для получения стереоинформации для каждого режима.
dwAlphaBltConstBitDepths
DDBD_2, DDBD_4 или DDBD_8. (Укажите 2, 4 или 8 бит на пиксель.)
dwAlphaBltPixelBitDepths
DDBD_1, DDBD_2, DDBD_4 или DDBD_8. (Укажите 1, 2, 4 или 8 бит на пиксель.)
dwAlphaBltSurfaceBitDepths
DDBD_1, DDBD_2, DDBD_4 или DDBD_8. (Укажите 1, 2, 4 или 8 бит на пиксель.)
dwAlphaOverlayConstBitDepths
DDBD_2, DDBD_4 или DDBD_8. (Укажите 2, 4 или 8 бит на пиксель.)
dwAlphaOverlayPixelBitDepths
DDBD_1, DDBD_2, DDBD_4 или DDBD_8. (Укажите 1, 2, 4 или 8 бит на пиксель.)
dwAlphaOverlaySurfaceBitDepths
DDBD_1, DDBD_2, DDBD_4 или DDBD_8. (Укажите 1, 2, 4 или 8 бит на пиксель.)
dwZBufferBitDepths
DDBD_8, DDBD_16, DDBD_24 или DDBD_32. (Укажите 8, 16, 24 или 32 бита на пиксель.) Этот член устарел для DirectX 6.0 и более поздних версий. Используйте IDirect3D7::EnumZBufferFormats для получения сведений о поддерживаемых форматах буфера глубины.
dwVidMemTotal
Общий объем памяти дисплея на устройстве (в байтах) за вычетом памяти, зарезервированной для основной поверхности и любых частных структур данных, зарезервированных драйвером. (Это значение совпадает с общим объемом видеопамяти, сообщаемым методом IDirectDraw7::GetAvailableVidMem .)
dwVidMemFree
Свободная память дисплея. Это значение равно значению в dwVidMemTotal, за вычетом любой памяти, выделенной приложением для surfaces. В отличие от метода IDirectDraw7::GetAvailableVidMem , который сообщает память, доступную для определенного типа поверхности (например, текстуры), это значение отражает память, доступную для любого типа поверхности.
dwMaxVisibleOverlays
Максимальное количество видимых наложений или спрайтов наложения.
dwCurrVisibleOverlays
Текущее количество видимых наложений или спрайтов наложения.
dwNumFourCCCodes
Число кодов FourCC.
dwAlignBoundarySrc
Выравнивание исходного прямоугольника для поверхности наложения в пикселях.
dwAlignSizeSrc
Выравнивание размера исходного прямоугольника для поверхности наложения в пикселях. Наложенные исходные прямоугольники должны иметь ширину в пикселях, которая кратна этому значению.
dwAlignBoundaryDest
Выравнивание прямоугольника назначения для поверхности наложения в пикселях.
dwAlignSizeDest
Выравнивание размера прямоугольника назначения для поверхности наложения в пикселях. Прямоугольники назначения наложения должны иметь ширину в пикселях, которая кратна этому значению.
dwAlignStrideAlign
Выравнивание шага.
dwRops[DD_ROP_SPACE]
Поддерживаются растровые операции.
ddsCaps
Структура DDSCAPS2 , содержащая общие возможности поверхности.
dwMinOverlayStretch
Минимальный коэффициент растяжения наложения, умноженный на 1000. Например, 1.3 = 1300.
dwMaxOverlayStretch
Максимальный коэффициент растяжения наложения, умноженный на 1000. Например, 1.3 = 1300.
dwMinLiveVideoStretch
Устаревшие; не использовать.
dwMaxLiveVideoStretch
Устаревшие; не использовать.
dwMinHwCodecStretch
Устаревшие; не использовать.
dwMaxHwCodecStretch
Устаревшие; не использовать.
dwReserved1
Зарезервировано
dwReserved2
Зарезервировано
dwReserved3
Зарезервировано
dwSVBCaps
Возможности, зависящие от драйвера, для битов из системной памяти для отображения памяти. Допустимые флаги идентичны флагам, связанным с bitblt, которые используются с элементом dwCaps .
dwSVBCKeyCaps
Возможности цветового ключа драйвера для битов из системной памяти для отображения памяти. Допустимые флаги идентичны флагам, связанным с bitblt, которые используются с членом dwCKeyCaps .
dwSVBFXCaps
Возможности FX драйвера для битов из системной памяти для отображения памяти. Допустимые флаги идентичны флагам, связанным с bitblt, которые используются с членом dwFXCaps .
dwSVBRops[DD_ROP_SPACE]
Растровые операции, поддерживаемые для битов из системной памяти для отображения памяти.
dwVSBCaps
Возможности, относящиеся к драйверу, для битовых разрядов из памяти дисплея в системную память. Допустимые флаги идентичны флагам, связанным с bitblt, которые используются с элементом dwCaps .
dwVSBCKeyCaps
Возможности цветового ключа драйвера для битовых фрагментов из памяти дисплея в системную память. Допустимые флаги идентичны флагам, связанным с bitblt, которые используются с членом dwCKeyCaps .
dwVSBFXCaps
Возможности FX драйвера для битов, от памяти дисплея до системной памяти. Допустимые флаги идентичны флагам, связанным с bitblt, используемым с элементом dwFXCaps .
dwVSBRops[DD_ROP_SPACE]
Растровые операции, поддерживаемые для битовых разрядов, от памяти дисплея до системной памяти.
dwSSBCaps
Возможности, зависящие от драйвера, для битовых разрядов из системной памяти в системную память. Допустимые флаги идентичны флагам, связанным с bitblt, используемым с членом dwCaps .
dwSSBCKeyCaps
Возможности цветового ключа драйвера для битов из системной памяти в системную память. Допустимые флаги идентичны флагам, связанным с bitblt, используемым с членом dwCKeyCaps .
dwSSBFXCaps
Возможности FX драйвера для битов из системной памяти в системную память. Допустимые флаги идентичны флагам, связанным с bitblt, используемым с элементом dwFXCaps .
dwSSBRops[DD_ROP_SPACE]
Растровые операции, поддерживаемые для битовых фрагментов из системной памяти в системную память.
dwReserved4
Зарезервировано
dwReserved5
Зарезервировано
dwReserved6
Зарезервировано
Комментарии
Для обеспечения обратной совместимости файл заголовка Ddraw.h содержит несколько определений структуры DDCAPS. Версия, которая передает препроцессор, определяется значением константы DIRECTDRAW_VERSION.
Требования
Верхняя часть | ddraw.h |