IPresentationManager::ForceVSyncInterrupt method (presentation.h)
Sets a value that indicates whether the GPU should always issue a VSync interrupt when a present is shown.
Syntax
HRESULT ForceVSyncInterrupt(
boolean forceVsyncInterrupt
);
Parameters
forceVsyncInterrupt
Type: BOOLEAN
TRUE
to always issue a VSync interrupt; otherwise, FALSE
.
Return value
Type: HRESULT
If the function succeeds, it returns S_OK
; otherwise, it returns an HRESULT
value that indicates the error.
Remarks
In order to take advantage of systems with hardware flip queue support, presents can be handled completely by the GPU without CPU involvement. This has power-saving benefits, but also means that buffer available events, the present retiring fence, and present statistics may not update immediately when the present is shown, but instead may update quite a bit later when the GPU periodically updates the CPU regarding what it has done independently.
An application can allow certain presents it doesn't need immediate feedback about to participate in this behavior by explicitly controlling whether the GPU should issue a VSync interrupt when each is shown. If not, such presents will result in improved power efficiency, at the cost of delayed feedback.
By default, presents will always force a VSync interrupt. Applications can opt into allowing some presents to not force a VSync interrupt by calling this method. If a system does not offer hardware flip queue support, all presents will issue a VSync interrupt and update the CPU, regardless of this setting.
This parameter setting persists across presents.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Build 22000 |
Minimum supported server | Windows Build 22000 |
Header | presentation.h |
Library | dcomp.lib |
DLL | dcomp.dll |