[DirectX] Shader-Versionen herausfinden
-
In der DX-Doku hab ich die D3DCAPS9-Struktur mit den Feldern PixelShaderVersion ( bzw. VertexShaderVersion ) gefunden. Es steht dabei, dass diese DWORDs je zwei Zahlen enthalten. Wie komme ich da jetzt ran?
-
du meinst wie du an die D3DCAPS9-Struktur kommst?
Dazu gibt es die Methode GetDeviceCaps von IDirect3D9 oder IDirect3DDevice9 ich weiß nicht mehr genau welches Objekt, aber ich denke das device-objekt ist es.
-
Ne, die Struktur hab ich. Die Pixel/Vertex Shader-Version speichert aber je zwei Werte ( Major und Minor ) in einem DWORD, und ich weiß nicht, wie ich an die einzelnen Werte komme.
-
Hi
HIWORD bzw. LOWORD(WINAPI Makros) werden dir weiterhelfen
cya
DEADBEEF
-
Mittels Makro D3DPS_VERSION(x,y) könntest du es auch rausfinden.
-
@this->that
Dann muss ich aber eine Version vorgeben und muss dann schauen, ob sie mit dem Wert aus den Caps übereinstimmt.
Ich will aber direkt den Wert haben.@DEADBEEF
Geht nicht.
Edit: Hab gerade das Makro D3DSHADER_VERSION_MAJOR ( bzw. MINOR ) gefunden.
Das ist, was ich suche.Danke für eure Hilfe.