Partager via


PFND3D10DDI_CREATERESOURCE fonction de rappel (d3d10umddi.h)

Crée une ressource.

Syntaxe

PFND3D10DDI_CREATERESOURCE Pfnd3d10ddiCreateresource;

void Pfnd3d10ddiCreateresource(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D10DDIARG_CREATERESOURCE *unnamedParam2,
  D3D10DDI_HRESOURCE unnamedParam3,
  D3D10DDI_HRTRESOURCE unnamedParam4
)
{...}

Paramètres

unnamedParam1

hDevice [in]

Handle de l’appareil d’affichage (contexte graphique).

unnamedParam2

pCreateResource [in]

Pointeur vers une structure de D3D10DDIARG_CREATERESOURCE qui décrit les paramètres que le pilote d’affichage en mode utilisateur utilise pour créer une ressource.

unnamedParam3

hResource [in]

Handle des données privées du pilote pour la ressource.

unnamedParam4

hRTResource [in]

Handle de la ressource que le pilote doit utiliser chaque fois qu’il rappelle le runtime Direct3D.

Valeur de retour

None

Remarques

Le pilote peut utiliser la fonction de rappel pfnSetErrorCb pour définir un code d’erreur.

Le pilote peut manquer de mémoire. Par conséquent, le pilote peut passer E_OUTOFMEMORY ou D3DDDIERR_DEVICEREMOVED dans un appel à la fonction pfnSetErrorCb . Le pilote peut également passer DXGI_DDI_ERR_UNSUPPORTED dans un appel à pfnSetErrorCb. Pour plus d’informations sur la transmission de DXGI_DDI_ERR_UNSUPPORTED, consultez la section Remarques de la page de référence BltDXGI . Le runtime Direct3D détermine que toutes les autres erreurs sont critiques. Si le pilote réussit des erreurs, y compris D3DDDIERR_DEVICEREMOVED, le runtime Direct3D détermine que le handle n’est pas valide ; par conséquent, le runtime n’appelle pas la fonction DestroyResource(D3D10) pour détruire le handle spécifié par le paramètre hResource .

Le runtime valide tous les paramètres par rapport aux paramètres qu’une application a envoyés pour créer la ressource. Par conséquent, le pilote ne doit pas recevoir de combinaisons non valides.

Si l’application n’a pas besoin que le contenu de la ressource persiste entre les présentations, le runtime définit l’indicateur D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT de l’énumération D3D10_DDI_RESOURCE_MISC_FLAG dans le membre MiscFlags de la structure D3D10DDIARG_CREATERESOURCE vers laquelle pointe le paramètre pCreateResource . La présentation se produit lorsque la fonction PresentDXGI ou BltDXGI du pilote (avec l’indicateur Présent défini dans la structure DXGI_DDI_ARG_BLT_FLAGS ) est appelée. Le runtime utilise l’indicateur D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT pour créer des mémoires tampons d’arrière-chaîne d’échange lorsqu’une application utilise la valeur DXGI_SWAP_EFFECT_DISCARD pour demander des chaînes d’échange.

Création d’une mémoire tampon d’arrière stéréo

À compter de Windows 8, si le pilote doit créer une mémoire tampon d’arrière stéréo, il doit définir les membres de la structure D3D10DDIARG_CREATERESOURCE pointées vers pCreateResource comme suit :
  1. Définissez le membre ArraySize sur la valeur 2.
  2. Définissez la valeur de l’indicateur D3D10_DDI_BIND_PRESENT dans le membre BindFlags .
En outre, pour prendre en charge la présentation stéréo, la fonction BltDXGI doit autoriser toutes les valeurs pour les membres DstSubresource et SrcSubresource de la structure DXGI_DDI_ARG_BLT qui se trouvent dans la plage des ressources source et de destination.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et les versions ultérieures des systèmes d’exploitation Windows.
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3d10umddi.h (include D3d10umddi.h)

Voir aussi

BltDXGI

CalcPrivateResourceSize

D3D10DDIARG_CREATERESOURCE

D3D10DDI_DEVICEFUNCS

DXGI_DDI_ARG_BLT

DestroyResource(D3D10)

pfnSetErrorCb