structure DD_D3DBUFCALLBACKS (ddrawint.h)
La structure DD_D3DBUFCALLBACKS est utilisée uniquement par les pilotes qui implémentent l’allocation au niveau du pilote des mémoires tampons de commande et de vertex.
Syntaxe
typedef struct _DD_D3DBUFCALLBACKS {
DWORD dwSize;
DWORD dwFlags;
PDD_CANCREATESURFACE CanCreateD3DBuffer;
PDD_CREATESURFACE CreateD3DBuffer;
PDD_SURFCB_DESTROYSURFACE DestroyD3DBuffer;
PDD_SURFCB_LOCK LockD3DBuffer;
PDD_SURFCB_UNLOCK UnlockD3DBuffer;
} DD_D3DBUFCALLBACKS, *PDD_D3DBUFCALLBACKS;
Membres
dwSize
Spécifie la taille en octets de cette structure DD_D3DBUFCALLBACKS.
dwFlags
Réservé.
CanCreateD3DBuffer
Pointe vers le rappel CanCreateD3DBuffer du pilote.
CreateD3DBuffer
Pointe vers le rappel CreateD3DBuffer du pilote.
DestroyD3DBuffer
Pointe vers le rappel DestroyD3DBuffer du pilote.
LockD3DBuffer
Pointe vers le rappel LockD3DBuffer du pilote.
UnlockD3DBuffer
Pointe vers le rappel UnlockD3DBuffer du pilote.
Notes
Les pilotes qui gèrent leurs propres mémoires tampons de commande et de vertex doivent remplir une structure DD_D3DBUFCALLBACKS et pointer le membre lpD3DBufCallbacks de DD_HALINFO vers celle-ci.
Le pilote doit également prendre en charge les fonctions de rappel signalées dans la structure DD_D3DBUFCALLBACKS. Ces rappels XxxD3DBuffer sont tous analogues au rappel DdXxxSurface de nom similaire ; ils ont les mêmes prototypes et sont appelés avec les mêmes paramètres d’entrée. Ces nouveaux rappels sont appelés uniquement lorsque la surface en question a l’indicateur DDSCAPS_EXECUTEBUFFER défini dans les embouts de surface. Les indicateurs de création de mémoire tampon sont DDSCAPS_WRITEONLY, DDSCAPS2_VERTEXBUFFER et DDSCAPS2_COMMANDBUFFER.
Le pilote détermine le type de mémoire tampon demandée en vérifiant le membre ddsCaps de la structure DD_SURFACE_LOCAL passée à CanCreateD3DBuffer et CreateD3DBuffer pour les indicateurs suivants :
-
DDSCAPS_VERTEXBUFFER
Indique que le pilote doit allouer une mémoire tampon de vertex explicite.
-
DDSCAPS_COMMANDBUFFER
Indique que le pilote doit allouer une mémoire tampon de commandes.
-
L’absence de ces deux indicateurs
Indique que le pilote doit allouer une mémoire tampon de vertex implicite.
Spécifications
En-tête | ddrawint.h (inclure Winddi.h) |