hud/menu in OpenGl
-
hey leutz,
Ich schreibe ein Spiel in C++ mit OpenGL, läuft bisher ganz gut, nur jetzt Problem: Wie würdet ihr ein HUD/MENÜ (am besten über 2dimensionale Bildschrimkoordinaten wegen Mausüberprüfung) zeichnen lassen? Bisher rechne ich die World-koordinaten der Menüeckpunkte mit gluUnProject aus und lasse das dann zeichnen - reichlich bekloppt, oder? ...
-
Muss es 3D sein? Ansonsten skalier dir doch einfach eine Grafik auf die Größe des Bildschirms und mach dann eine Mausabfrage...
-
Schau dir mal die Extension GL_ARB_window_pos an.
-
BlAlB schrieb:
Bisher rechne ich die World-koordinaten der Menüeckpunkte mit gluUnProject aus und lasse das dann zeichnen - reichlich bekloppt, oder? ...
Ja, hört sich selbst für OGL bekloppt an.
Bye, TGGC (Wähle deine Helden)
-
glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0, screen_width, screen_height, 0, -1, 1); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glDisable(GL_DEPTH_TEST); // koennte sinn machen fuer ein menue
Danach hast Du eine Abbildung GL-Weltkoordinaten(x,y) <--> Screenkoordinaten(x,y), die z-Komponente ist nur fuer den z-buffer relevant (oder du stellst das Depth-Testen aus).