Metodo IDXGISwapChain1::P resent1 (dxgi1_2.h)
Presenta un frame nella schermata di visualizzazione.
Sintassi
HRESULT Present1(
UINT SyncInterval,
UINT PresentFlags,
[in] const DXGI_PRESENT_PARAMETERS *pPresentParameters
);
Parametri
SyncInterval
Intero che specifica come sincronizzare la presentazione di una cornice con lo spazio vuoto verticale.
Per il modello bit-block transfer (bitblt) (DXGI_SWAP_EFFECT_DISCARD o DXGI_SWAP_EFFECT_SEQUENTIAL), i valori sono:
- 0 - La presentazione viene eseguita immediatamente, non esiste alcuna sincronizzazione.
- Da 1 a 4 : sincronizzare la presentazione dopo l'n° verticale vuoto.
- 0 - Annullare il tempo rimanente nel frame presentato in precedenza e ignorare questo frame se viene accodato un frame più recente.
- Da 1 a 4: sincronizzare la presentazione per almeno n spazi vuoti verticali.
Se l'area di aggiornamento supera più di un output (ognuno rappresentato da IDXGIOutput1), Present1 esegue la sincronizzazione con l'output contenente il sotto rettangolo secondario più grande dell'area client della finestra di destinazione.
PresentFlags
Valore intero contenente le opzioni di presentazione della catena di scambio. Queste opzioni sono definite dalle costanti DXGI_PRESENT .
[in] pPresentParameters
Puntatore a una struttura DXGI_PRESENT_PARAMETERS che descrive i rettangoli aggiornati e le informazioni sullo scorrimento del frame da presentare.
Valore restituito
I valori restituiti possibili includono: S_OK, DXGI_ERROR_DEVICE_REMOVED , DXGI_STATUS_OCCLUDED, DXGI_ERROR_INVALID_CALL o E_OUTOFMEMORY.
Commenti
Un'app può usare Present1 per ottimizzare la presentazione specificando rettangoli di scorrimento e dirty. Quando il runtime contiene informazioni su questi rettangoli, il runtime può quindi eseguire bitblts necessari durante la presentazione in modo più efficiente e passare questi metadati a Desktop Window Manager (DWM). DWM può quindi usare i metadati per ottimizzare la presentazione e passare i metadati alle visualizzazioni indirette e ai server terminal per ottimizzare il traffico in transito. Un'app deve limitare le modifiche solo alle aree dirty passate a Present1, nonché modificare l'intera area dirty per evitare che il contenuto delle risorse non definito venga esposto.
Per le catene di scambio dei modelli di presentazione capovolte create con il valore DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL impostato, una presentazione con esito positivo restituisce un binding del buffer nascosto 0 dalla pipeline grafica, tranne quando si passa il flag DXGI_PRESENT_DO_NOT_SEQUENCE nel parametro Flags .
Per informazioni sul modo in cui i valori dei dati cambiano quando si presenta il contenuto nella schermata, vedere Conversione dei dati per lo spazio dei colori.
Per informazioni sulla chiamata a Present1 quando l'app usa più thread, vedi Considerazioni su multithreadinge multithreading e DXGI.
Capovolgere la coda del modello di presentazione
Si supponga che i fotogrammi seguenti con valori di intervallo di sincronizzazione vengano accodati dal meno recente (A) al più recente (E) prima di chiamare Present1.R: 3, B: 0, C: 0, D: 1, E: 0
Quando si chiama Present1, il runtime mostra il frame A solo per un intervallo vuoto verticale. Il runtime termina il frame A in anticipo a causa dell'intervallo di sincronizzazione 0 nel frame B. Il runtime mostra quindi frame D per un intervallo vuoto verticale e quindi frame E fino a quando non si invia una nuova presentazione. Il runtime elimina i fotogrammi B e C.
Visualizzazione della frequenza di aggiornamento variabile
È un requisito di frequenza di aggiornamento variabile che indica che l'operazione di disinstallazione è abilitata. Il metodo CheckFeatureSupport può essere usato per determinare se questa funzionalità è disponibile e per impostare i flag necessari fare riferimento alle descrizioni di DXGI_PRESENT_ALLOW_TEARING e DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING e la sezione Frequenza di aggiornamento variabile visualizza/Vsync off di DXGI 1.5 Improvements.Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 e aggiornamento della piattaforma per Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2012 e aggiornamento della piattaforma per Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | dxgi1_2.h |
Libreria | Dxgi.lib |