PFND3D11DDI_SETSHADER_WITH_IFACES funzione di callback (d3d10umddi.h)

La funzione CsSetShaderWithIfaces imposta il codice dello shader di calcolo insieme a un gruppo di interfacce in modo che tutte le operazioni di invio successive usino tale codice e tali interfacce.

Sintassi

PFND3D11DDI_SETSHADER_WITH_IFACES Pfnd3d11ddiSetshaderWithIfaces;

void Pfnd3d11ddiSetshaderWithIfaces(
       D3D10DDI_HDEVICE unnamedParam1,
       D3D10DDI_HSHADER unnamedParam2,
  [in] UINT NumClassInstances,
       const UINT *unnamedParam4,
       const D3D11DDIARG_POINTERDATA *unnamedParam5
)
{...}

Parametri

unnamedParam1

hDevice [in]

Handle per il dispositivo di visualizzazione (contesto grafico).

unnamedParam2

hShader [in]

Handle per l'oggetto codice dello shader di calcolo.

[in] NumClassInstances

Numero di istanze di classe per le implementazioni delle interfacce.

unnamedParam4

pPointerData [in]

Matrice di strutture D3D11DDIARG_POINTERDATA . Ogni struttura descrive la posizione dei dati a cui fa riferimento un'istanza di classe assegnata a un'implementazione dell'interfaccia. Il numero di elementi nella matrice viene specificato dal parametro NumClassInstances .

unnamedParam5

pIfaces [in]

Matrice di identificatori di tabella delle funzioni. Ogni identificatore corrisponde a un'istanza di classe assegnata a un'implementazione dell'interfaccia. Il numero di elementi nella matrice viene specificato dal parametro NumClassInstances .

Valore restituito

nessuno

Osservazioni

Il driver può usare la funzione di callback pfnSetErrorCb per impostare un codice di errore.

Ogni istanza di classe per un'implementazione dell'interfaccia include le informazioni seguenti:

  • Codice associato a tale istanza della classe
  • Percorso per i dati usati da tale istanza della classe
Il parametro NumClassInstances specifica il numero di interfacce che devono essere assegnate in fase di esecuzione. Per ogni interfaccia, ogni elemento della matrice pIfaces fornisce un identificatore di tabella delle funzioni e ogni elemento della matrice pPointerData fornisce i percorsi dati per un'istanza di classe assegnata all'interfaccia.

Il driver può passare E_OUTOFMEMORY (se il driver non è in memoria) o D3DDDIERR_DEVICEREMOVED (se il dispositivo viene rimosso) in una chiamata alla funzione pfnSetErrorCb . Il runtime Direct3D determina che eventuali altri errori sono critici. Se il driver supera eventuali errori, inclusi D3DDDIERR_DEVICEREMOVED, il runtime Direct3D determina che l'handle non è valido; pertanto, il runtime non chiama la funzione DestroyShader per eliminare l'handle specificato dal parametro hShader .

La funzione GsSetShaderWithIfaces imposta il codice geometry shader insieme a un gruppo di interfacce in modo che tutte le operazioni di disegno successive usino il codice e tali interfacce.

La funzione PsSetShaderWithIfaces imposta il codice pixel shader insieme a un gruppo di interfacce in modo che tutte le operazioni di disegno successive usino tale codice e tali interfacce.

La funzione DsSetShaderWithIfaces imposta il codice dello shader di dominio insieme a un gruppo di interfacce in modo che tutte le operazioni di disegno successive usino il codice e tali interfacce.

La funzione HsSetShaderWithIfaces imposta il codice dello shader dello scafo insieme a un gruppo di interfacce in modo che tutte le operazioni di disegno successive usino il codice e tali interfacce.

La funzione VsSetShaderWithIfaces imposta il codice del vertex shader insieme a un gruppo di interfacce in modo che tutte le operazioni di disegno successive usino il codice e tali interfacce.

Requisiti

Requisito Valore
Client minimo supportato CsSetShaderWithIfaces è supportato a partire dal sistema operativo Windows 7.
Piattaforma di destinazione Desktop
Intestazione d3d10umddi.h (include D3d10umddi.h)

Vedi anche

D3D11DDIARG_POINTERDATA

D3D11DDI_DEVICEFUNCS

DistruttoShader

pfnSetErrorCb