Autor |
Beitrag |
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: Do 02.05.13 17:11
Guten Tag,
sicherlich gibt es dazu schon viele Erklärungen... zumindest habe ich inzwischen schon sehr viel zu diesem Thema gelesen...
3D Programmierung...
Ich habe vor allem OpenGL/GLscene in betrachtet gezogen, leider hapert es an der Installierung.
Da ich nur die Personal Edition habe, ist diese "eingeschränkt" hier sind sogar die "Internet-Komponenten" freizuschalten...
ich habe versucht glscene unterzuladen und hier trat der Fehler auf, das eine .inc fehlte.. nach mehrfachem Googlen fand ich nur Problemlösung, wenn die .inc vorhanden, aber nicht gefunden war.. bei mir ist sie allerdings nicht einmal vorhanden
könntet ihr mir bitte vernünftig erklären, wie ich in die 3D-Programmierung einsteigen sollte?
Bedenkt: Delphi7 PE
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 02.05.13 18:18
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: Do 02.05.13 19:02
Frühlingsrolle hat folgendes geschrieben : |
Als Alternative könntest du dir Lazarus besorgen, denn GLScene unterstützt auch diese IDE. |
ich habe bereits Lazarus und hier fehlen mir immer mal wieder Klassen etc.. und deshalb "umgewöhnen" will ich nicht :/
Die befehle/typen etc. sind zwar SEHR änhlich, aber leider nicht gleich..
ich würde gerne bei Delphi bleiben.. evt gibt es kostenfreie VOLLversionen? Am besten würde ich natürlich bei 7 PE bleiben..
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 02.05.13 19:26
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: Do 02.05.13 20:20
ich habs mal nach: www.delphi-treff.de/...enesis3d-und-delphi/ versucht,
leider gibt's beim runterladen die Fehlermeldung:
Zitat: | Die Version dieser Datei ist nicht mit der ausgeführten Windows-Version kompatibel. Öffnen
Sie die Systeminformation des Computers, um zu prüfen, ob eine x86-(32 Bit-)- oder
eine x64-(64 Bit-)-Version des Programms erforderlich ist, und wenden Sie sich anschließend
an den Herausgeber der Software. |
Auch im Kompatiblitätsmodus klappt es nicht!
(ich habe gelesen, es liegt an der Windows Version und man sollte es mit einer XP 32 Bit Simulation probieren, doch daran glaub ich nicht ganz)
kennt wer eine Möglichkeit?
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 02.05.13 23:52
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
jaenicke
Beiträge: 19284
Erhaltene Danke: 1742
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 03.05.13 10:23
Das ist eine 16 Bit Install Shield Installation... die geht unter 64 Bit in der Tat nicht...
Aber schon diese Tatsache würde mich die Software ganz schnell vergessen lassen. Noch veralteter geht ja schon fast nicht mehr...
Und wenn ich dann noch sehe, dass es ein Advanced Genesis 3D Projekt gibt, das das Projekt fortsetzen will, aber selbst schon 11 Jahre inaktiv ist... ähm... naja...
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: Fr 03.05.13 12:17
mhh... theoretisch ist es ja nicht schwer eine "einfache" 3D Umgebung zu programmieren...
Man gibt alle Punkte an, deren Verbindungen, und einen Bezugspunkt.. dann zeichnet man alle punkte mit Verbindungen angefangen bei den die am weitesten vom Bezugspunkt weg sind... die die näher sind werden dann ja "automatisch" über die "alten" punkte gelegt...
beim ändern des bezugspunktes, verschiebt man dann alle punkte so, dass der Bezugspunkt wieder 0|0|0 ist! und per rotationskreis dann alle punkte so drehen, dass der Bezugspunkt wieder "normal" ausgerichtet ist.. (also x nach rechts, y nach unten/oben, z nach hinten)
ich denke das wäre weniger Programmierarbeit als theoretisch mathematische Überlegungen.. ich denke Mathematiker kennt sich damit aus
ein Problem wäre, dass das ganze dann vom CPU berechnet werden würde und nicht von der GraKa :/ dadurch wäre das wahrscheinlich zu langsam, oder?
Edit: Und es würde folgendes fehlen: Größenminimierung auf Entfernung.. (1mm in 1m Entfernung wirkt größer (bzw. nimmt mehr vom Sichtfeld ein) als 1mm in 5m Entfernung)
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: Sa 04.05.13 21:32
- Push -?
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
rushifell
Beiträge: 306
Erhaltene Danke: 14
|
Verfasst: So 05.05.13 11:29
Ich verwende für die OpenGL-Programmierung folgende Header-Datei:
wiki.delphigl.com/index.php/dglOpenGL.pas
Sollte laut Dokumentation ab Delphi 3.0 funktionieren.
Sicherlich mag das mehr Arbeit sein. Allerdings machst Du Dich dann nicht von irgendwelchen Engines oder Libraries abhängig.
Gibst Du in eine Suchmachine "OpenGL" und "Delphi" ein, dann stolperst Du übrigens direkt darüber
Viele Grüße
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: So 05.05.13 13:27
ja.. damit muss ich mich mal "einarbeiten"... aber zurück zu meiner oben aufgestellten Frage...
3D punkte zu einem Bezugspunkt (0|0|0 Im Bildschirm: Screen.Width div 2| Screen.Height div 2| 0 oder -1) und dann alle anderen punkte ensprechend drehen?
soviel ich weiß sollte das mit 3 Vektor/matritzen-rechnungen und "einfachen" sichtabfragen (ob object/punktverbindungen von anderen verdeckt werden) gehen oder?
Das zeichnen etc. dazu reicht ja (zur Zeit noch) Canvas...
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
rushifell
Beiträge: 306
Erhaltene Danke: 14
|
Verfasst: So 05.05.13 14:41
IhopeonlyReader hat folgendes geschrieben: | ja.. damit muss ich mich mal "einarbeiten"... aber zurück zu meiner oben aufgestellten Frage...
|
Dein Desinteresse an meiner Antwort zur eigentlichen Fragestellung ist erfrischend.
Deine weitere Frage hat mit der ursprünglichen Fragestellung nichts mehr zu tun. Ich verstehe auch den Sinn nicht, darüber theoretisch zu philosophieren. Probiers aus bzw. "arbeite Dich mal ein", und Deine Frage wird sich von selbst erledigen.
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: So 05.05.13 16:33
naja ich finde die Unit noch sehr unübersichtlich
ich wollte mit meiner "anderen" frage ein paar Funktionen aufstellen FERTIG^^
z.B.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
|
constructor Create(Breite, Hoehe, Tiefe: Integer; Bezuspunkt: DDKoordinaten; BlickRichtungV, BlickRichtungH: TWinkel);
procedure Erstelle(Name: String; DDKoordinaten); procedure verbindePkt(NamevonPkt1, NamevonPkt2: String; Farbe: TColor); procedure verbindezuFlaeche(NamenderPunkte: Array of String; Farbe: TColor);
procedure NBezugspunkt(neuePos: DDKoordinaten); procedure DreheV(Winkel: TWinkel); procedure DreheH(Winkel: TWinkel); procdure Zeichnen(var EinCanvas: TCanvas); |
dglOpenGL.pas besitzt zwar solche Funktionen, aber irgendwie gibt's da sehr viel mehr und ich muss mich mit den Parametern etc. einlesen.. ! ...
Ja, ehrlich gesagt finde ich "3D" nicht schwer und überlege eine Unit selbst zu programmieren...
abe wie gesagt, ich werde mich mal einlesen und "kleinere" Projekte damit machen
wenn das damit alles klappt oder ich hilfe brauche werd ich mich nochmal melden
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
jaenicke
Beiträge: 19284
Erhaltene Danke: 1742
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 05.05.13 16:53
Eine 3D Darstellung ist einfach, wenn du nur wenige einfache geometrische Körper hast. Sobald du aber echte Welten mit Schattenwurf, schön aussehenden Texturen usw. willst, kommst du mit einem eigenen kleinen Ansatz nicht weit (es sei denn du willst eine eigene 3D Engine entwickeln, aber das ist sehr kompliziert ).
|
|
IhopeonlyReader
Beiträge: 600
Erhaltene Danke: 23
Delphi 7 PE
|
Verfasst: So 05.05.13 17:15
danke jaenicke.. die Schatten z.B hatte ich vergessen :/
und wie ich vorhin schon schrieb "vorerst" würden solche Funktionen reichen
damit wäre es z.B. auch einfacher 8 Punkte eines Würfels angeben und diesen drehbar machen.. mit dglOpenGl ist das schon relativ "viel" Arbeit....
_________________ Sucht "neueres" Delphi
Wer nicht brauch was er hat, brauch auch nicht was er nicht hat!
|
|
jaenicke
Beiträge: 19284
Erhaltene Danke: 1742
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 05.05.13 18:25
Es ist richtig, dass OpenGL mehr Einarbeitungszeit braucht, aber dafür sind die Ergebnisse auch sehr viel schöner.
Nebenbei:
Was du mit Größenminimierung meinst nennt sich Perspektive.
|
|