![]() |
3D-Grafik - Wo starten (OpenGL?)
Hallo zusammen,
ich will in einem Projekt einige 3D-Grafiken erstellen. Dabei soll es sich nur um einige recht einfache Grafiken handeln, so z.B. Würfel bei denen auf jede Seite eine bestimmte Grafik projiziert wird. Leier weiss ich im Moment überhaupt nicht wo ich anfangen soll. Ist beispielsweise OpenGL dafür geeignet oder schiesse ich damit schon über das Ziel hinaus? Ich will ja kein Spiel programmieren, benötige also die ganzen spielespezifischen Sachen wie Kollisionsüberprüfung und Actors nicht. Ist OpenGL daher eine Kanone die auf meinen Spatz schiesst?? Ich hatte mal testweise GLScene installiert aber wenn ich die Demos ausführte dann wurde immer nur eine weisse Fläche angezeigt (Demos liessen sich kompilieren aber zeigten eben keine Grafiken an). Nochmal kurz meine Anforderungen: - Erzeugen von (einfachen) geometrischen Körpern Box, Kugel, Pyramide - Auf den Oberflächen der Körper sollten Grafiken angezeigt werden können (Projektion, keine echten Texturen oder sowas) - Körper sollten sich drehen lassen (x, y oder z-Achse) nicht in Echtzeit - Erzeugte Grafik sollte gespeichert werden (die üblichen Dateiformate) Fetures wie Animation oder gar Oberflächen per Raytracing zu berechnen brauche ich nicht (einfache Schatierung eventuell) Kann mir jemand Tipps geben, wo man da anfängt? Danke schon mal, Ralf |
Re: 3D-Grafik - Wo starten (OpenGL?)
Für 3D ist OpenGL weder Kanone noch Spatz, sondern ganau das Richtige.
Allerdings würed ich nicht GLscene nehmen. Mein Balanced ist im Prinzip aus dem Sample der Lesson1 von ![]() Entsanden. Schaus dir an , evtl ists was für dich. |
Re: 3D-Grafik - Wo starten (OpenGL?)
|
Re: 3D-Grafik - Wo starten (OpenGL?)
Gut. Also ist OpenGL doch richtig. Ich hab mal kurz bei den Links vorbeigeschaut. Das Material (Beispiele, Tutorials usw.) sieht ja sehr vielversprechend aus!
Danke euch beiden! Ralf [EDIT:] PS: ich habe mir gerade mal eine der kompilierten Demos von der DelphiGL-Seite heruntergeladen. Wenn ich diese unter Vista starte dann sehe ich nur ein leeres Fenster (so wie bei den Demos von GLScene). Starte ich die Demo unter XP sehe ich die Grafik, in dem Falle eine Landschaft) Wird OpenGL unter Vista nicht unterstützt oder muss da noch etwas installiert werden (ich geb zu, dass ich bisher noch keine der Infos auf den Seiten gelesen habe, was ich aber sobald wie möglich tue) [NOCHMAL EDIT:] Habe gerade memerkt, dass es funktioniert wenn man bei Vista die Aero-Glass-Effekte abschaltet. Ist das generell mit OpenGL so (also nicht kompatibel zu Aero-Glass)? |
Re: 3D-Grafik - Wo starten (OpenGL?)
Zitat:
|
Re: 3D-Grafik - Wo starten (OpenGL?)
@inherited
Ich habe zuerst DirectX gemacht. Dann wollte ich was vernünftiges machen und bin auf OpenGL umgestiegen. die GLscene installiert und Rum probiert , das ging ein ganzes weilchen so, aber letztendlich muste ich dank der vielen Einstellmöglichkeiten aufgeben. Ich bevorzuge die Klassische OpenGL Einbindung einfach nur aufgrund der Einfachheit. Ich Nutze meistens die DGLOpenGL.pas von DelphiGl Nutzt man diese Variante so benötigt man lediglich 2 Variablen und etwa 10 Zeilen Code und kann mit OpenGL voll durchstarten. Da ich aufgrund meines Studiums sehr viel übre die OpenGL befehle weis und eh alles immer selbst mache ist deshalb dieser weg der angenehmere. Mein allererstes OpenGL Project war übrigens Balanced, will heisen, das diese Art der Anwendung tatsächlich so einfach war, das ich gleich voll loslegen konnte ;). |
Re: 3D-Grafik - Wo starten (OpenGL?)
Wie sieht es denn mit dem "Aero-Problem" aus? Wenn ich die Demos unter Vista/Aero starte (vorkompiliert) dann sehe ich keine angezeigte Grafik. Schalte ich die Aero-Effekte für das Programm ab dann wird alles so angezeigt wie es sein soll.
Ist das ein generelles Problem von OpenGL oder kann man vom Programm her das Vorhandensein von Aero berücksichtigen (und die Demos machen das nur nicht)? |
Re: 3D-Grafik - Wo starten (OpenGL?)
Da ist afaik kein Problem von OpenGl sondern ein Folge von der Hardwareunterstützung von Aero. das Problem tritt auch bei Medipalyern auf. Diese müssen auch den AERO-Effekt abstellen um die HW-Beschleunigung nutzen zu können.
|
Re: 3D-Grafik - Wo starten (OpenGL?)
Also das muss an der Hardware liegen sonst würde ja Spiele wie Quake 3,4 überhaupt nicht gehen, und die Funktionieren unter Vista
|
Re: 3D-Grafik - Wo starten (OpenGL?)
Bei Verwendung von OpenGL unter Vista sollte immer Aero abgeschaltet werden, das es (auch bei bekannten Spielen) nur Probleme macht.
Das ergaben jedenfalls Tests bei uns in der Firma. Es kann natürlich sein, dass es keine Probleme gibt, wenn man einen entsprechenden Treiber des GraKa-Herstellers hat, sofern verfügbar. MS unterstützt OpenGL nur halbherzig, weil es eben nicht von MS ist ;) |
Re: 3D-Grafik - Wo starten (OpenGL?)
Hmmm, das disqualifiziert OpenGL dann für mein Vorhaben. Ich denke mal, dass Spiele sowieso meistens im Vollbild laufen und es daher nicht wichtig ist ob Aero aktiviert ist oder nicht aber ich will den Benutzern (keine Spiele-Zielgruppe) nicht erklären müssen warum ihr Windows plötzlich anders aussieht wenn das Programm gestartet wird.
Schade eigentlich (hat mir aber eine Entwicklung in die falsche Richtung erspart :wink: ) |
Re: 3D-Grafik - Wo starten (OpenGL?)
Ich würde deswegen nicht von OpenGL abrücken, denn immer mehr GraKa-Hersteller liefern mittlerweile Treiber für Vista.
Bei einem Test-Programm von uns war es so, dass Grafiken mit Power of 2-Abmessungen angezeigt wurden, während andere Grafiken mit davon abweichenden Abmessungen einfach weiss blieben. Erst nach Installation eines neuen Grafik-Treibers wurde alles angezeigt. Deshalb bleiben wir bei einigen Programmen nun auch bei OpenGL. |
Re: 3D-Grafik - Wo starten (OpenGL?)
Wenn das nur auf meinem Rechner das Problem wäre dann würde ich dir zustimmen aber ich möchte den Benutzern nicht erklären müssen warum sie sich vor der Installation des Programmes auf die Suche nach aktuellen Grafiktreibern machen müssen (wie gesagt: keine Spiele-Zielgruppe, die Leute sind es nicht gewohnt, dass sie neue Treiber installieren müssen wenn sie ein bestimmtes Programm installieren)
Ich hatte gehofft, dass man vom Programm aus, wenn Aero gefunden wird, irgendwelche Massnahmen ergreifen könnte damit OpenGL auch auf Aero korrekt angezeigt wird. Zusätzliche Treiberinstallationen sind in diesem Umfeld absolut keine Option (die Administratoren bei den Kunden würden mit mit dem nackten Hintern ins Gesicht springen :? ) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:13 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