Direct3D 8: Windows-UI "Overlay"?
-
Hi!
Nehmen wir an, ich habe für Windows ein UI mit GDI+ gemacht. Jetzt möchte ich, dass man es auch innerhalb einer Direct3D 8 (Vollbild-)Anwendung sehen und benutzen kann (Steam-Ähnlich).
Wie könnte ich das realisieren?
Wie geht es am performantesten?
-
Also IMHO gehts gar nicht. Was meinst du warum jede Engine oder jedes Spiel ein eigenes selbstgeschriebenes GUI hat?
-
Es geht:
http://www.toymaker.info/Games/html/direct3d_faq.html#D3D15
GDI+ ist aber nicht gerade performant und sieht schlechter aus,
weshalb es eher sinnvoll ist was eigenes zu schreiben.
-
Das ist Direct3D 9.
Habe gerade etwas mit GetBackBuffer() gebastelt. Allerdings ist es natürlich wirklich viel zu langsam, jedes Frame die GDI(+)-Zeichenoperationen durchzuführen.
Man könnte vielleicht nur neu Zeichnen, wenn nötig, und sonst nur blitten.
Weiß jemand, wie Steam das macht?
-
Steam läuft über das VGUI-System (Valve GUI), also über die selber Render-Schnittstelle wie die Ingame-GUIs.
Könntest per Render-To-Texture dein GUI bei einer Veränderung auf eine Textur rendern. Die Textur kannst du dann die ganze Zeit rendern, das sollte ja keine Performance ausmachen.
War nur sone schnelle Idee