Entwickler-Ecke
Multimedia / Grafik - OpenGL als "Image-Fenster"
Adrian - Mi 04.06.03 19:04
Titel: OpenGL als "Image-Fenster"
Hallo,
Ayas OpenGL-Tutorial hat mich auf den Geschmack gebracht. Aber was ich noch nicht kapiert und gefunden habe:
Kann man die Animation so wie ein Image auf dem Formular plazieren?
Ich stelle mir das so vor, daß neben dem GL-Fenster diverse Steuerelemente platziere, mit denen ich die Bewegungen steuern kann. Der "Vollbildmous" ist nicht so ganz das, was mir vorschwebt.
Gruß,
Adrian
Adrian - Do 05.06.03 15:17
Hallo Phoebus!
Erst mal Danke für die Antwort.
Jetzt sehe ich auch, daß man meine Frage leicht mißverstehen kann, also werde ich versuchen, sie neu zu stellen.
Im vorliegenden Fall ist es so, daß ich eine 3D-Anwedung geschrieben habe, die auch recht annehmbar funktioniert. Die Steuerung übernehme ich zur Zeit mit den Pfeil-Tasten, und das will ich ändern. Dazu stelle ich mir das so vor, daß ich in einem normalen Formular ein paar Steuerflächen lege, die mir erlauben, den Betrachtungsstandpunkt und die Objektbewegung zu verändern - Schieberegler schweben mir vor. Allerdings wird ja das Programmfenster komplett vom OpenGL eingenommen. Jetzt könnte ich natürlich ein zweites Formular mit den Steuerelementen aufmachen, aber lieber wäre es mir, wenn im Form1 sowohl die OpenGL-Ausgabe, als auch die Regelelemente zu sehen wären.
Geht das überhaupt? In den Tutorials, die ich mir angeschaut habe, war das leider nie der Fall.
Gruß,
Adrian
Phobeus - Do 05.06.03 15:41
Bitte ... Phobeus, kommt von der Phobie und nicht dem Fötus ;D
Ok, nun habe ich dich verstanden. Ich darf hier ja keine Werbung machen und verweise wieder nur einmal darauf, dass einige Leute bei sich um Profile nützeliche Seiten haben, die unter anderen in den Downloads ein Template für zwei Views-Ports in einem Fenster haben. Wenn Du Dir den Code ansiehst, solltest Du recht schnell auf die Idee kommen, den zweiten Viewport zu entfernen und dann dort lieber einige Steuerelemente reinzubacken. Alles klar ;)
Pascal - Do 05.06.03 15:44
In verschiedenen Tutorials ist bereits
Quelltext
1: 2: 3: 4: 5: 6:
| procedure TForm1.FormCanResize(Sender: TObject; var NewWidth, NewHeight: Integer; var Resize: Boolean); begin glViewport(0,0,newWidth,newHeight);
end; |
eingebunden.
stattdessen einfach
glViewport(0,0,newWidth-200,newHeight); oder ähnliches einfügen.
Adrian - Fr 06.06.03 08:36
@Phobeus
Da habe ich mal wieder nicht richtig hingeschaut. Ich dachte allerdings nicht an Fötus, sondern an Phoebus (auch Phöbus oder Phoibus) "der Strahlende", was ein Beinamen Apolls ist.
Der Tipp mit 2 Viewports scheint in die richtige Richtung zu gehen, ich werde mich mal ein wenig damit befassen.
@Pascal
Deinen Code baue ich gleich mal ein.
Danke an beide!
Gruß,
Adrian
Raphael O. - Fr 06.06.03 23:29
ich denke du meinst was anderes...
man kann seine Szene auch in ein Panel zeichnen, womit dann das erreicht wird, was du willst... (falls ich das richtig verstanden habe ;) )
dazu musst du bei den Handles nur immer Panel1.handle anstatt Form1.canvas.handle übergeben...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!