![]() |
OpenGLWidget
Liste der Anhänge anzeigen (Anzahl: 2)
Hi,
im Anhang findet sich eine von mir entwickelte Komponente, die es erlaubt einfache OpenGL Fenster auf das Form zu setzen. Desweiteren ist noch ein kurzes Beispiel angehangen. Diese Komponente macht nichts anderes als die Initialisierung die in div. Tutorials vorgestellt wird auf eine Komponente zu übertragen, so daß nicht das komplette Form für OpenGL initialisiert wird, sondern auch noch Platz für "normale" VCL komponenten bleibt. Das ist für Spiele vielleicht nicht so spannend, aber für wissenschaftliche Anwendungen relativ interessant. Testen, Feedback geben und dran freuen. Grüße Wolf [EDIT] Na wenn das mal kein würdiger 100. Beitrag ist :angel: [/EDIT] |
Re: OpenGLWidget
Hi Blechwolf :hi:
Am besten du postest sowas das nächste mal in die entsrechende Kategorie, also entweder Open-Source oder Freeware ;-) |
Re: OpenGLWidget
Ok, fürs nächste mal dann. Hab lange überlegt wo ich es denn am besten reinpacken soll. Vielleicht kann ja einer der Moderatoren so nett sein und das in das seiner Meinung am besten geeignete Forum verschieben...
|
Re: OpenGLWidget
Also ich hab mir die Komponenten jetzt mal runtergeladen, und ich muss sagen: das Teil ist Super :thuimb:
Ich glaube, das ist eine der nützlichsten Kompos, die ich jemals gesehen habe. Das, was mich nämlich ständig davon abgehalten hat, ein OpenGL-Grafik-Projekt zu starten, war diese nervige Initialisierung :-) Aber nun steht dem nichts mehr im Wege. |
Re: OpenGLWidget
Liste der Anhänge anzeigen (Anzahl: 1)
Update...
Anbei eine neue Version des OpenGLWidgets. Hab ein paar Wanzen genagelt... ;o) Auf Neudeutsch: Bugs gefixt... |
Re: OpenGLWidget
Sehr coole Komponente, allerdings:
Delphi 5 Professional meckerte: "Datei *.dcr kann nicht gefunden werden" Nachdem ich {$R *.dcr} im Implementation-Abschnitt gelöscht hatte gings aber... Ich glaube, diese Kompo nehme ich für ein "Info"-Fenster... Feines Ding :thumb: ************************************************** ********************************** Zitat:
************************************************** ********************************** |
DP-Maintenance
Dieses Thema wurde von "Sharky" von "VCL-Komponenten und Controls" nach "Open-Source" verschoben.
Ich war mal so nett den Thread zu verschieben ;-) |
Re: OpenGLWidget
Liste der Anhänge anzeigen (Anzahl: 2)
Und noch ein Update.
Hab die Kamera in das Widget ausgelagert. Und die DCR Datei mit dazugepackt... |
Re: OpenGLWidget
Wenn die Kompo weiter so wächst, wäre vielleicht eine Doku angebracht... *hoff*
|
Re: OpenGLWidget
Zitat:
Mal sehen was ich noch alles darein auslagere... Gruß Wolf |
Re: OpenGLWidget
Liste der Anhänge anzeigen (Anzahl: 1)
Noch ein Bugfix...
Jetzt funktioniert auch das vergrößern, wenn das Widget nicht auf "Client aligned" ist und mehrere Widgets im Fenster drin sind. Benötigt das vorherige Package, da hier nur die OGLWidget.pas Datei dranhängt. Btw: Warum darf ich eigentlich asc c cc cpp h hh hpp ini js txt xml aber keine pas Files anhängen :-( [edit] Und wie kann ich versehentliche doppelte Beiträge löschen? [/edit] Gruß Wolf |
Re: OpenGLWidget
Liste der Anhänge anzeigen (Anzahl: 1)
Noch ein Bugfix...
Jetzt funktioniert auch das vergrößern, wenn das Widget nicht auf "Client aligned" ist und mehrere Widgets im Fenster drin sind. Benötigt das vorherige Package, da hier nur die OGLWidget.pas Datei dranhängt. Btw: Warum darf ich eigentlich asc c cc cpp h hh hpp ini js txt xml aber keine pas Files anhängen :o( Gruß Wolf |
Re: OpenGLWidget
Muß sagen nicht schlecht die Komponente
:dp: |
Re: OpenGLWidget
Hallo Leute,
könnte mir jemand bitte einen Tipp geben, wie ich diese Kompo zum Einsatz bringen kann? Habs installiert, kann aber nichts damit anfangen? Wie nutzt man das? Wie erzeugt man neue Objekte? Wozu kann man den Renderer nutzen? Was soll das Beispiel uns zeigen? Danke Tom |
Re: OpenGLWidget
Hi Torud,
Letztlich ist es ganz einfach, setzt allerdings gewisse OpenGL Grundkenntnisse voraus. Die Komponente macht nämlich nix anderes als einen OpenGL-Context zu erzeugen. Das OnRender Ereignis wird jedesmal beim neuzeichnen aufgerufen. Da OpenGL aber keine Scenegraph-API ist (wie z.B. OpenInventor oder Java3D oder GLScene) sondern eben eine Render-API kannst Du keine "Objekte" erzeugen, sondern mußt explizit angeben wie Deine Objekte gezeichnet werden müssen. Um Beispielsweise ein Dreieck zu zeichnen sagst Du:
Delphi-Quellcode:
In anderen Worten: Wenn Du ein Objekt zeichnen willst, mußt Du jede Fläche und für jede Fläche jeden Vertex angeben (sieht man mal von Strip-Objekten ab).
glBegin(GL_TRIANGLES);
glVertex3f(x1,y1,z1); glVertex3f(x2,y2,z2); glVertex3f(x3,y3,z3); glEnd(); Zitat:
Zitat:
Zitat:
Zitat:
In diesem Sinne von viel Erfolg Wolf |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz