Mein Spiel verwendet DirectX 10 und ich habe ein Problem, bei dem Benutzer melden, dass mein Spiel nicht auf ihrer Grafikkarte gespeichert ist. Stattdessen wird es lieber auf der integrierten Intel-Karte ausgeführt, was die Leistung beeinträchtigt. Möglicherweise hängt dies mit Windows 8 zusammen. Dies kann auch mit mobilen Karten zusammenhängen.
Bis jetzt habe ich das DirectX 10-Gerät ohne angegebenen Adapter erstellt (wie ich bisher in allen Beispielen / Demos gesehen habe), damit DirectX seinen eigenen Adapter auswählen kann. Anscheinend muss ich das ändern.
Ich habe bereits eine Funktion, die alle verfügbaren Adapter durchläuft und den mit der höchsten Menge an dediziertem Speicher auswählt. Das funktioniert gut, um das Problem zu beheben, aber ist es im Allgemeinen richtig?
Leider kann ich mich nicht darauf verlassen, dass die Karte einen gültigen Videoausgang hat (dh einen angeschlossenen Monitor), da die von diesem Problem betroffenen Computer keine Ausgänge für die gewünschte Karte melden.
Welchen Algorithmus kann ich verwenden, um den mit DirectX zu verwendenden Adapter richtig auszuwählen?