функция обратного вызова PDD_CANCREATESURFACE (ddrawint.h)
Функция обратного вызова CanCreateD3DBuffer определяет, может ли драйвер создать команду уровня драйвера или буфер вершин указанного описания.
Синтаксис
PDD_CANCREATESURFACE PddCancreatesurface;
DWORD PddCancreatesurface(
PDD_CANCREATESURFACEDATA unnamedParam1
)
{...}
Параметры
unnamedParam1
Указывает на структуру DD_CANCREATESURFACEDATA . Эта структура содержит сведения, необходимые драйверу для определения возможности создания команды или буфера вершин.
Возвращаемое значение
CanCreateD3DBuffer возвращает код обратного вызова.
Комментарии
Этот обратный вызов используется только в том случае, если драйвер управляет командами на уровне драйвера и буферами вершин.
CanCreateD3DBuffer должен проверка описание поверхности, на которое указывает элемент lpDDSurfaceDesc структуры DD_CANCREATESURFACEDATA в lpCanCreateD3DBuffer, чтобы определить, может ли драйвер поддерживать формат и возможности запрошенного буфера для режима, в который сейчас находится драйвер. Драйвер должен возвращать DD_OK в члене ddRVal той же структуры, если он поддерживает этот тип буфера. В противном случае он должен вернуть код ошибки DDERR_Xxx, который лучше всего описывает, почему он не поддерживает буфер.
Этот вызов имеет тот же прототип, что и DdCanCreateSurface. Обратный вызов CanCreateD3DBuffer используется, однако, если в элементе ddsCapsструктуры DD_SURFACE_LOCAL для рассматриваемой поверхности установлен флаг DDSCAPS_EXECUTEBUFFER.
Драйвер определяет тип запрашиваемого буфера, проверяя член ddsCaps структуры DD_SURFACE_LOCAL на наличие следующих флагов:
Flag | Значение |
---|---|
DDSCAPS2_COMMANDBUFFER | Драйвер должен выделить буфер команд. |
DDSCAPS2_VERTEXBUFFER | Драйвер должен выделить явный буфер вершин. |
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | ddrawint.h (включая Winddi.h) |