PFND3D11DDI_CREATERESOURCE funzione di callback (d3d10umddi.h)
Crea una risorsa.
Sintassi
PFND3D11DDI_CREATERESOURCE Pfnd3d11ddiCreateresource;
void Pfnd3d11ddiCreateresource(
D3D10DDI_HDEVICE unnamedParam1,
const D3D11DDIARG_CREATERESOURCE *unnamedParam2,
D3D10DDI_HRESOURCE unnamedParam3,
D3D10DDI_HRTRESOURCE unnamedParam4
)
{...}
Parametri
unnamedParam1
hDevice [in]
Handle per il dispositivo di visualizzazione (contesto grafico).
unnamedParam2
pCreateResource [in]
Puntatore a una struttura D3D11DDIARG_CREATERESOURCE che descrive i parametri usati dal driver di visualizzazione in modalità utente per creare una risorsa.
unnamedParam3
hResource [in]
Handle per i dati privati del driver per la risorsa.
unnamedParam4
hRTResource [in]
Handle per la risorsa che verrà usata dal driver quando viene chiamato nel runtime Direct3D.
Valore restituito
nessuno
Osservazioni
Il driver può usare la funzione di callback pfnSetErrorCb per impostare un codice di errore.
Il driver potrebbe esaurire la memoria. Pertanto, il driver può passare E_OUTOFMEMORY o D3DDDIERR_DEVICEREMOVED in una chiamata alla funzione pfnSetErrorCb . Il driver può anche passare DXGI_DDI_ERR_UNSUPPORTED in una chiamata a pfnSetErrorCb. Per altre informazioni sul passaggio di DXGI_DDI_ERR_UNSUPPORTED, vedere la sezione Osservazioni della pagina di riferimento di BltDXGI . Il runtime Direct3D determina che tutti gli altri errori sono critici. Se il driver passa errori, inclusi D3DDDIERR_DEVICEREMOVED, il runtime Direct3D determina che l'handle non è valido; pertanto, il runtime non chiama la funzione DestroyResource(D3D10) per eliminare definitivamente l'handle specificato dal parametro hResource .
Il runtime convalida tutti i parametri rispetto ai parametri inviati da un'applicazione per creare la risorsa. Pertanto, il driver non deve ricevere combinazioni non valide.
Se l'applicazione non richiede che il contenuto della risorsa venga mantenuto tra le presentazioni, il runtime imposta il flag D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT dell'enumerazione D3D10_DDI_RESOURCE_MISC_FLAG nel membro MiscFlags della struttura D3D11DDIARG_CREATERESOURCE a cui punta il parametro pCreateResource . La presentazione si verifica quando viene chiamata la funzione PresentDXGI o BltDXGI (con il flag Present impostato nella struttura DXGI_DDI_ARG_BLT_FLAGS ). Il runtime usa il flag D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT per creare buffer back della catena di scambio quando un'applicazione usa il valore DXGI_SWAP_EFFECT_DISCARD per richiedere catene di scambio.
Creazione di un buffer back stereo
A partire da Windows 8, se il driver deve creare un buffer nascosto stereo, deve impostare i membri della struttura D3D11DDIARG_CREATERESOURCE a cui punta pCreateResource come indicato di seguito:- Impostare il membro ArraySize su un valore pari a 2.
- Impostare il valore del flag D3D10_DDI_BIND_PRESENT nel membro BindFlags .
Restrizioni per i valori di input
Per i driver Windows Display Driver Model (WDDM) 1.3 e versioni successive, il runtime di Microsoft Direct3D fornisce un set limitato di valori di input usati da questa funzione. Per un elenco di tutti i valori limitati, vedere [Miglioramenti delle prestazioni di rendering Direct3D](/windows-hardware/drivers/display/direct3d-rendering-performance-improvements).Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | CreateResource(D3D11) è supportato a partire dal sistema operativo Windows 7. |
Piattaforma di destinazione | Desktop |
Intestazione | d3d10umddi.h (include D3d10umddi.h) |