PFND3D10DDI_SETSCISSORRECTS funzione di callback (d3d10umddi.h)
La funzione SetScissorRects contrassegna parti di destinazioni di rendering limitate al rendering.
Sintassi
PFND3D10DDI_SETSCISSORRECTS Pfnd3d10ddiSetscissorrects;
void Pfnd3d10ddiSetscissorrects(
D3D10DDI_HDEVICE unnamedParam1,
[in] UINT NumRects,
[in] UINT ClearRects,
const D3D10_DDI_RECT *unnamedParam4
)
{...}
Parametri
unnamedParam1
hDevice [in]
Handle per il dispositivo di visualizzazione (contesto grafico).
[in] NumRects
Numero totale di parti di destinazione di rendering specificate dal parametro pRects.
[in] ClearRects
Numero di parti di destinazione di rendering dopo il numero di parti di destinazione di rendering che NumScissorRects specifica di essere impostate su NULL. Questo numero rappresenta la differenza tra il numero precedente di parti di destinazione di rendering( ovvero quando il runtime di Microsoft Direct3D precedentemente chiamato SetScissorRects) e il nuovo numero di parti di destinazione di rendering.
Si noti che il numero specificato ClearScissorRects è solo un aiuto di ottimizzazione perché il driver di visualizzazione in modalità utente potrebbe calcolare questo numero.
unnamedParam4
pRects [in]
Matrice di strutture RECT per le parti di destinazione di rendering da contrassegnare.
Valore restituito
Nessuno
Osservazioni
Il driver può usare il pfnSetErrorCb funzione di callback per impostare un codice di errore.
La struttura D3D10_DDI_RECT è definita come struttura di.
typedef RECT D3D10_DDI_RECT;
Il driver di visualizzazione in modalità utente deve impostare tutte le parti di destinazione di rendering in modo atomico come un'unica operazione.
Sebbene il parametro NumScissorRects specifichi il numero di parti di destinazione di rendering nella matrice specificate dal parametro pRects, alcuni valori nella matrice possono essere NULL.
Intervallo di parti di destinazione di rendering tra il numero che NumScissorRects specifica e il numero massimo di parti di destinazione di rendering consentite deve contenere tutti i valori NULL o non associati. Il numero specificato dal parametro ClearScissorRects indica al driver il numero di parti di destinazione di rendering che il driver deve cancellare per l'operazione atomica corrente.
Se la chiamata precedente a SetScissorRects passato un valore pari a 2 nel parametro NumScissorRec ts e la chiamata corrente a SetScissorRects passa un valore 4 in NumScissorRects, la chiamata corrente a SetScissorRects passa anche un valore pari a 0 nel parametro ClearScissorRects. Se la successiva chiamata a SetScissorRects passa un valore pari a 1 in NumScissorRects, la chiamata successiva passa anche il valore 3 (4 - 1) in ClearScissorRects.
Quando il valore delle parti di destinazione di rendering non crittografate viene richiesto durante le operazioni di query in modalità utente, il valore è la differenza tra il numero massimo di parti di destinazione di rendering e il valore delle parti di destinazione di rendering.
Il driver non deve riscontrare alcun errore, ad eccezione di D3DDDIERR_DEVICEREMOVED. Pertanto, se il driver passa qualsiasi errore, ad eccezione di D3DDDIERR_DEVICEREMOVED, in una chiamata alla funzione pfnSetErrorCb, il runtime Di Microsoft Direct3D determinerà che l'errore è critico. Anche se il dispositivo è stato rimosso, il driver non è necessario per restituire D3DDDIERR_DEVICEREMOVED; Tuttavia, se la rimozione del dispositivo interferisce con l'operazione di SetScissorRects (che in genere non dovrebbe accadere), il driver può restituire D3DDDIERR_DEVICEREMOVED.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Windows Vista e versioni successive dei sistemi operativi Windows. |
piattaforma di destinazione | Desktop |
intestazione | d3d10umddi.h (include D3d10umddi.h) |