Kann sein, dass du die Koordinaten noch anpassen musst, aber ansonsten müsste es so gehen. Du musst dich dann aber natürlich noch um die Mausklicks usw. kümmern.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
In Normalfall besteht alles aus Texturen und ganz normale Flächen. Es kommt immer nur darauf wie die Flächen dargestellt werden.
Du musst in den 2D Modus (glOrtho) von OpenGL wechseln und dann zeichnest du deine Ttexturierten Flächen. Du musst darauf achten, dass dein Z-Wert 0 ist. Also entweder glVertex2f oder glVertex3f mit z = 0. Sollte jedenfals auch mit glVertex3f gehen. Habe es aber bisher immer über glVertex2f gemacht.
PS: bei erfolgreichen glOrtho ist die Größe anders als im 3D Modus. In 2D sind die Einheiten dann mitunter ein wenig kleiner. Also die Stellen dann Pixel dar. Zu mindest kommt es darauf an was man OpenGL sagt.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Jain. Das würde zwar gehen allerdings würdest du dich dann immer noch im 3D Raum befinden. Wodurch das Darstellen von Menüs ziemlich erschwert wird. Außer du möchtest ein 3D Menü darstellen wie das in Quake 1 der Fall war. Also die Selektion des Levels und der Schwierigkeit. Der Rest von dem Menü also Speichern laden, console, etc war aber wiederum 2D also glOrtho.
Registriert: Di Mai 18, 2004 16:45 Beiträge: 2623 Wohnort: Berlin
Programmiersprache: Go, C/C++
Ortho ist schon sehr zu raten ausser du hast vor ein 3D Menü aller Ridick zu machen(was ich sehr ansehnlich finde).
und spätestesn wenn du ein HUD zeichnen willst oder ein Text musst du eh in den Ortho Modus wechseln sonnst wirds ein aufwand vom feinsten ^^
MfG TAK2k4
_________________ "Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren" Benjamin Franklin
sind die Koordinaten dann wirklcih in Pixeln? ich hatte das nämlich mal ausprobiert und das hat irgendwie überhaupt nicht so funktioniert wie ich mir das vorgestellt hatte...
_________________
Zuletzt geändert von Maricello am Do Jan 27, 2005 20:17, insgesamt 1-mal geändert.
Registriert: Mi Jul 17, 2002 12:07 Beiträge: 976 Wohnort: Tübingen
Nö, bei den Einheiten wird bei OpenGL normalerweise nie in Pixel gerechnet, sondern mit den Maßen, die in glViewport /gluPerspective festgelegt wurden. Also bei den üblichen Werten bringt man bei z=-5 ungefähr 10 Einheiten (x, y) unter.
_________________ "Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0." - Hal Faber Meine Homepage: http://laboda.delphigl.com
also ich wollte mir jetzt nen Editor schreiben, in dem ich die Wände eines Raumes setzen kann usw. Und da hab ich mir gedacht als Wände einfach eine Linie zu zeichnen (man sähe das ganze dann also von oben)
Ich bin aber völlig dran gescheitert, dass ich Mausklicks und das Zeichnen in OGL-Einheiten überhaupt nicht aufeinander abstimmen konnte. Ich musste dann letztendlich auch auf OGL verzichten. hätts eine Möglichkeit gegeben das trotz alloem mit OGL zu machen?? (wohlgemerkt eine, die nicht in mehr Arbeit ausartet als das eigentlich Programm dann...)
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Um einen Mausklick in OpenGL umzurechnen und umgekehrt gibt gluUnProjekt und gluProjekt (bitte Wiki dazu befragen).
Wenn du im Orthomodus die Größe des OpenGLFensters gleich deinem Bildschirm machst, und dein Programm im Fullscreen läuft, dann ist in deinem menü die kleinste Einheit die du anklicken kannst tatsächlich ein Pixel.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Maricello hat geschrieben:
sind die Koordinaten dann wirklcih in Pixeln?
Mit glOrtho (2D) kannst du es so einstellen, dass eine Einheit genau ein Pixel entspricht. Das ist aber auch kein muss. Du kannst die auch im Bereich von 0 bis 1 ansiedeln. Macht sich aber für reines 2D nicht so gut.
Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.