Metodo IDirect3DDevice9::P resent (d3d9helper.h)
Presenta il contenuto del buffer successivo nella sequenza di buffer back di proprietà del dispositivo.
Sintassi
HRESULT Present(
[in] const RECT *pSourceRect,
[in] const RECT *pDestRect,
[in] HWND hDestWindowOverride,
[in] const RGNDATA *pDirtyRegion
);
Parametri
[in] pSourceRect
Tipo: const RECT*
Puntatore a un valore che deve essere NULL a meno che non sia stata creata la catena di scambio con D3DSWAPEFFECT_COPY. pSourceRect è un puntatore a una struttura RECT contenente il rettangolo di origine. Se NULL, viene visualizzata l'intera superficie di origine. Se il rettangolo supera la superficie di origine, il rettangolo viene ritagliato nella superficie di origine.
[in] pDestRect
Tipo: const RECT*
Puntatore a un valore che deve essere NULL a meno che non sia stata creata la catena di scambio con D3DSWAPEFFECT_COPY. pDestRect è un puntatore a una struttura RECT contenente il rettangolo di destinazione, nelle coordinate client della finestra. Se NULL, l'intera area client viene riempita. Se il rettangolo supera l'area client di destinazione, il rettangolo viene ritagliato nell'area client di destinazione.
[in] hDestWindowOverride
Tipo: HWND
Puntatore a una finestra di destinazione la cui area client viene presa come destinazione per questa presentazione. Se questo valore è NULL, il runtime usa il membro hDeviceWindow di D3DPRESENT_PARAMETERS per la presentazione.
[in] pDirtyRegion
Tipo: const RGNDATA*
Il valore deve essere NULL a meno che non sia stata creata la catena di scambio con D3DSWAPEFFECT_COPY. Per altre informazioni sulle catene di scambio, vedere Flipping Surface (Direct3D 9) e D3DSWAPEFFECT. Se questo valore non è NULL, l'area contenuta viene espressa nelle coordinate del buffer indietro. I rettangoli all'interno dell'area sono il set minimo di pixel che devono essere aggiornati. Questo metodo tiene conto di questi rettangoli durante l'ottimizzazione della presentazione copiando solo i pixel all'interno dell'area o alcuni set di rettangoli adeguatamente espansi. Si tratta di un aiuto per l'ottimizzazione solo e l'applicazione non deve basarsi sull'area copiata esattamente. L'implementazione può scegliere di copiare l'intero rettangolo di origine.
Valore restituito
Tipo: HRESULT
I valori restituiti possibili includono: D3D_OK o D3DERR_DEVICEREMOVED (vedere D3DERR).
Commenti
Se necessario, viene applicata un'operazione di estensione per trasferire i pixel all'interno del rettangolo di origine nel rettangolo di destinazione nell'area client della finestra di destinazione.
Il presente avrà esito negativo, restituisce D3DERR_INVALIDCALL, se viene chiamato tra coppie BeginScene e EndScene, a meno che la destinazione di rendering non sia la destinazione di rendering corrente, ad esempio il buffer indietro ottenuto dalla creazione di una catena di scambio aggiuntiva. Si tratta di un nuovo comportamento per Direct3D 9.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d9helper.h (include D3D9.h) |
Libreria | D3D9.lib |