Supporting OpenGL Enhancements
Windows 7 Enhancements
This section applies only to Windows 7 and later, Windows Server 2008 R2 and later.
You can implement your OpenGL installable client driver (ICD) to use the following OpenGL enhancements that ship with Windows 7:
Enhancing Synchronization
You can enhance the synchronization capabilities of your OpenGL ICD by using the following second-generation OpenGL synchronization functions:
Controlling Resource Access with Mutexes
You can use the following OpenGL mutex functions to control access to resources:
Managing Access to Shared Resources
You can use the following OpenGL functions to manage access to a shared resource:
Monitoring Present History
You can use the following OpenGL functions to monitor the history of present operations:
D3DKMTPresent with D3DKMT_PRESENTHISTORYTOKEN structures populated in the PresentHistoryToken member of the D3DKMT_PRESENT structure
Miscellaneous Enhancements
You can use the following OpenGL miscellaneous enhancements:
D3DKMTSetDisplayMode with the D3DKMT_SETDISPLAYMODE_FLAGS structure populated in the Flags member of the D3DKMT_SETDISPLAYMODE structure
D3DKMTPollDisplayChildren with new flags set in the D3DKMT_POLLDISPLAYCHILDREN structure
Windows 8 Enhancements
This section applies only to Windows 8 and later, and Windows Server 2012 and later.
You can implement your OpenGL installable client driver (ICD) to use the following OpenGL enhancements that ship with Windows 8:
Controlling Resource Access with Mutexes
You can use these OpenGL mutex functions and associated structures to control access to resources while specifying private data to associate with a keyed mutex:
OpenGL Helper Functions
You can use these functions and their associated structures to access objects and their handles:
- D3DKMTGetSharedResourceAdapterLuid
- D3DKMTOpenAdapterFromLuid
- D3DKMTOpenNtHandleFromName
- D3DKMTOpenResourceFromNtHandle
- D3DKMTOpenSyncObjectFromNtHandle
- D3DKMT_GETSHAREDRESOURCEADAPTERLUID
- D3DKMT_OPENADAPTERFROMLUID
- D3DKMT_OPENNTHANDLEFROMNAME
- D3DKMT_OPENRESOURCEFROMNTHANDLE
- D3DKMT_OPENSYNCOBJECTFROMNTHANDLE