Freigeben über


Laden eines installierbaren OpenGL-Clienttreibers

Die OpenGL-Runtime greift auf die Registrierung zu, um zu bestimmen, welcher installierbare OpenGL-Clienttreiber (ICD) geladen werden soll. So laden Sie den OpenGL ICD, die OpenGL-Runtime:

  • Bestimmt den Namen, die Version und die Flags, die dem OpenGL ICD zugeordnet sind, indem die D3DKMTQueryAdapterInfo-Funktion mit dem KMTQAITYPE_UMOPENGLINFO Wert aufgerufen wird, der im Type-Member der D3DKMT_QUERYADAPTERINFO-Struktur festgelegt ist, auf die der pData-Parameter verweist.

  • Überprüft die Versionsnummer der OpenGL ICD, die D3DKMTQueryAdapterInfo zurückgibt, um die Version des OpenGL ICD zu überprüfen.

  • Lädt den OpenGL ICD unter Verwendung des Namens des OpenGL ICD.

  • Initialisiert den Zugriff auf die Funktionen des OpenGL ICD.

Um den Namen des OpenGL ICD zu suchen, durchsucht D3DKMTQueryAdapterInfo die Registrierung im folgenden Schlüssel:

HKLM/System/CurrentControlSet/Control/Class/{Adapter GUID}/0000/

Dieser Schlüssel enthält auch die Namen der Microsoft Direct3D-Benutzermodusanzeigetreiber. Dieser Schlüssel enthält vier Registrierungseinträge für 32-Bit-Windows Vista-Anzeigetreiber, die unter 32-Bit-Windows Vista verwendet werden, und vier Einträge für 32-Bit-Windows Vista-Anzeigetreiber, die unter 64-Bit-Windows Vista verwendet werden. Die folgenden Einträge gelten für 32-Bit-Windows Vista-Anzeigetreiber, die unter 32-Bit-Windows Vista verwendet werden:

Eingabe type Erklärung
UserModeDriverName REG_SZ Der Name des Direct3D-Anzeigetreibers für den Benutzermodus, der für den Betrieb eines Direct3D-Renderinggeräts erforderlich ist, unabhängig davon, ob das Betriebssystem einen OpenGL ICD unterstützt.
OpenGLDriverName REG_SZ Der Name des OpenGL ICD. Wenn der OpenGL ICD beispielsweise Mydriver.dllist, ist der Wert dieses Eintrags Mydriver.dll.
OpenGLVersion REG_DWORD Die Versionsnummer des OpenGL ICD, die die OpenGL-Runtime verwendet, um die Version des OpenGL ICD zu überprüfen.
OpenGLFlags REG_DWORD Eine Flagbitmaske. Derzeit ist Bit 0 (0x00000001) aus Kompatibilitätsgründen festgelegt. Wenn Bit 1 (0x00000002) festgelegt ist, ruft die OpenGL-Runtime die Endfunktion des ICD nicht auf, bevor die Runtime die Swappufferfunktion des ICD aufruft.

Die folgenden Einträge gelten für 32-Bit-Windows Vista-Anzeigetreiber, die unter 64-Bit-Windows Vista verwendet werden:

Eingabe type Erklärung
UserModeDriverNameWow REG_SZ Der Name des 32-Bit-Microsoft Direct3D-Benutzermodus-Anzeigetreibers für 64-Bit-Windows Vista.
OpenGLDriverNameWow REG_SZ Der Name des 32-Bit-OpenGL-ICD für 64-Bit-Windows Vista.
OpenGLVersionWow REG_DWORD Die Versionsnummer des 32-Bit-OpenGL-ICD für 64-Bit-Windows Vista.
OpenGLFlagsWow REG_DWORD Eine Flagbitmaske der 32-Bit-OpenGL-ICD für 64-Bit-Windows Vista.