AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Easy3DGL - Eine Bibliothek für OpenGL
Thema durchsuchen
Ansicht
Themen-Optionen

Easy3DGL - Eine Bibliothek für OpenGL

Ein Thema von Edlmann · begonnen am 15. Mai 2011 · letzter Beitrag vom 22. Mär 2012
Antwort Antwort
Seite 1 von 6  1 23     Letzte »    
Edlmann
Registriert seit: 19. Nov 2010
Guten Abend liebe DP,
Ich habe schon vor längerer Zeit eine eigene Bibliothek für OpenGL geschrieben, die darauf ausgelegt ist, den Umgang mit OpenGL so einfach wie möglich zu machen, ohne irgendwelche Komplexen Techniken zu nutzen, um das ganze möglichst simpel zu halten.
Bisher hatte ich allerdings keine vollständige Dokumentation dafür geschrieben, was das Veröffentlichen relativ sinnlos gemacht hätte, doch da ich im Moment mehr als genug Zeit habe, hab ich mich mal hingesetzt und einen einfache Dokumentation für diese Bibliothek fertig gestellt.
Ich weiß dass es auch andere Bibliotheken für OpenGL gibt (GlScene etc.), doch diese Bibliothek ist so simpel gehalten, dass man auch aus ihr lernen kann (der Quelltext liegt bei), und so den Einstieg in OpenGL vereinfacht.

Feature-Liste:
- Kameraführung per Maus ohne eigenen Quelltext
- Simpel zu initialisieren: Nur eine Zeile Code benötigt
- Viele simple geometrische Formen als Klasse gekapselt zur einfachen Bedienung (z.B.: Quader, Kugel, Würfel, Kegelstumpf u.v.m.)
- Kamerasensitivität kann eingestellt werden
- Klassen zum einfachen erstellen eines 3D-Hintergrundes
- Unterstützung vieler verschiedener Materialien (Material-Liste muss noch hinzugefügt werden)
Für einen kompletten Überblick der Features siehe beiliegende Dokumentation / Beispielprogramme

Mit der Bibliothek kommen einige kleinere Beispielprogramme, die die verschiedenen Klassen einführen.

Download:
http://dl.dropbox.com/u/12342503/Easy3DGL.rar
Ohne Beispiele:
http://dl.dropbox.com/u/12342503/Easy3DGL_UnitOnly.rar

Falls jemand von euch Verbesserungsmöglichkeiten im Quelltext sieht (was ziemlich sicher der Fall sein wird ), postet sie einfach bitte hier, und ich werde sie in die Bibliothek mit aufnehmen.
Ich hoffe die Bibliothek hilft einigen,
Den Thread werd ich bald erweitern mit einer etwas detaillierteren Darstellung der Easy3DGL, das hier ist mehr so eine kleine Vorschau dessen was möglich ist
Danke schomal fürs Feedback und Grüße,
Edlmann
Miniaturansicht angehängter Grafiken
billard.jpg   heightmap.jpg  

Geändert von Edlmann (21. Feb 2012 um 10:58 Uhr)
 
Benutzerbild von lbccaleb
lbccaleb

 
Delphi 7 Enterprise
 
#2
  Alt 16. Mai 2011, 13:46
Hallo, erstrmal Danke für die geleistete Arbeit

Kenn mich da nicht so aus mit OGL deswegen wollte ich mir das mal ein wenig genauer anschauen.
Allerdings bekomm ich bei allen Bsp.Anwendungen eine Exception am start der Programme.
Woran kann das liegen?

Habe WinVista
Martin
  Mit Zitat antworten Zitat
Satty67

 
Delphi 2007 Professional
 
#3
  Alt 16. Mai 2011, 14:46
Wollte es auch schnell testen, aber Umlaute im Quelltext mochte meine Delphi-Version garnicht. Ist D2009 Vorraussetzung? siehe unten...

ARB_multisample war bei mir auch nicht dabei, aber das hatte ich noch so gefunden...

****

Ok, Umlaute einfach mal ersetzt und läuft...

Beim Beenden Fehler in in EASY3DGL bei:
Delphi-Quellcode:
finalization
  if AppHandle > 0 then
    FreeGL;
Listenindex überschreitet Maximum.

Aber sieht trotzdem schon ganz gut aus:
Miniaturansicht angehängter Grafiken
skybox.jpg  

Geändert von Satty67 (16. Mai 2011 um 14:52 Uhr)
  Mit Zitat antworten Zitat
Edlmann
 
#4
  Alt 16. Mai 2011, 16:48
@lbccaleb: habe ich spontan keine Idee, warum das so ist...Hast du die compilierten Programme ausgeführt oder selbst compiliert?

@Satty67: Ups, hätt dabeischreiben sollen dass ich das in D2007 geschrieben habe...werd vllt noch eine zweite Version für D7 und drunter fertig machen, oder kannst du einfach die Version mit den ersetzten Umlauten hochladen? Wäre super.
Zur ARB_Multisample: Hab nur vergessen die aus den uses zu entfernen, ist gefixxt
Die AV beim Beenden kann ich nicht nachvollziehen...Bei welchem Programm trat das ganze denn auf?

Geändert von Edlmann (16. Mai 2011 um 16:51 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

 
Delphi 7 Enterprise
 
#5
  Alt 16. Mai 2011, 18:21
Habe die compilierten Programme aus dem Archiv ausgeführt!
Martin
  Mit Zitat antworten Zitat
Satty67

 
Delphi 2007 Professional
 
#6
  Alt 16. Mai 2011, 18:27
kannst du einfach die Version mit den ersetzten Umlauten hochladen?
[...]
Bei welchem Programm trat das ganze denn auf?
hab's in der Firma getestet, da liegen auch die korrigierten Units

War aber nur Würfel und Türkis, bin einfach jeder Fehlermeldung gefolgt und hab' ein ue draus gemacht.

Der Fehler kam bei der SkyBox-Demo...
  Mit Zitat antworten Zitat
Benutzerbild von rweinzierl
rweinzierl
 
#7
  Alt 17. Mai 2011, 10:53
Hallo

Habe mir gerade die Doku zum Sonnensystem angeschaut, für mich beeindruckend.

Meine bisherigen Erfahrungen beschränken sich auf etwas GLScene und VRML.

Was ich aber suchen würde wäre eine import und exportfunktionalität für 3D DXF dateien.

(Oder ein anderes Format wrl, x3d, ....) .


Ich würde gerne unsere Produkte im 3D zusammenstellen (Die Einzelkomponenten sind im 3D konstuiert)

==> Gibt es so etwas, ich bin doch nicht der erste mit diesem Problem.

==> Ich habe zwar gegoogled aber irgendwie komme ich nicht weiter.

mfg

Reinhold
  Mit Zitat antworten Zitat
Edlmann
 
#8
  Alt 17. Mai 2011, 13:24
@satty67: Okey schade, aber das krieg ich glaub ich grad noch selber hin, die paar Ü's umzuwandeln
Zu dem Fehler: Ich liebe es etwas zu programmieren, was dann bei anderen Fehler aufwirft die man nicht nachvollziehen kann...Ich habe ehrlich gesagt absolut keine Idee, wo da der Fehler liegen könnte...es gibt eigentlich nur 2 Listen, bei denen der Fehler auftreten könnte, und bei beiden tritt der Fehler bei mir nicht auf...Ich kann das ganze ja leider nicht auf der selben Maschine wie du testen, aber es wäre super wenn du den Fehler mal auf einen kleineren Bereich eingrenzen könntest (z.B. indem du um Teile der Prozedur FreeGL einen try except Block setzt), damit ich den Fehler beheben kann.

@rweinzierl: Mit dem Import von irgendwelchen Datei-Formaten hab ich mich absolut noch nicht beschäftigt, für alle Projekte die ich bisher in OGL geschrieben habe brauchte ich eigentlich nur Texturen...
  Mit Zitat antworten Zitat
Satty67

 
Delphi 2007 Professional
 
#9
  Alt 17. Mai 2011, 13:34
auf einen kleineren Bereich eingrenzen
Beim 2. Assigned(SolidList[x]), ohne die Logik zu prüfen riecht das nach Copy&Paste Fehler:
Delphi-Quellcode:
unit Easy3DGL;
[...]
procedure FreeGL;
[...]
  for x := 0 to SolidList.Count - 1 do
  begin
    if Assigned(SolidList[x]) then
    begin
    CItem := SolidList[x];
    CItem.Free;
    end;
  end;

  for y := 0 to TransparentList.Count - 1 do
  begin
    if Assigned(SolidList[x]) then // <<< Hier
    begin
    CItem := TransparentList[x];
    CItem.Free;
    end;
  end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

 
Delphi 11 Alexandria
 
#10
  Alt 17. Mai 2011, 13:36
Deshalb lagert man so etwas auch in eigene Routinen aus
Detlef
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 6  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz