Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jul 19, 2025 20:59

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Probleme mit GLMultMatrix
BeitragVerfasst: So Sep 25, 2005 11:45 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 26, 2005 21:13
Beiträge: 13
Wohnort: Dresden
Hallo Leute,

Ich hab mal wieder ein Problem. Ich bastel ja an dem 3DS-Loader von Mike Lischke rum und es funktioniert alles auch einigermaßen gut, aber jetzt hab ich versucht, eigene Matrizen einzubinden.
Sobald ich glMultMatrix aufrufe, verschwindet meine gesamte Szene, selbst wenn ich nur versuche, die Identitätsmatrix zu multiplizieren.
Kann das daran liegen, dass ich die OpenGL.pas verwende oder ist es was anderes? Leider kann ich die dglOpenGl.pas nicht benutzen, da streikt der Loader.

Danke,

battledevil


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Sep 25, 2005 11:47 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Auf jeden Fall soltest du dafür sorgen, dass alle deine Units, die OpenGL verwenden, den gleichen Header benutzen. Sonst treten bevorzugt merkwürdige Exceptions auf. Sowas frustriert ungemein ;)

Ob das bei dir jetzt das Problem ist, glaube ich zwar nicht, aber schaden kann es nicht, wenn du überalle die dglopengl.pas verwendest ;)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Sep 25, 2005 12:05 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 26, 2005 21:13
Beiträge: 13
Wohnort: Dresden
Ok, habs jetzt geschafft, die dgl-Header einzubinden, musste halt die Initialisierung des Renderkontextes neu schreiben.
Hat leider nicht geholfen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Sep 25, 2005 12:30 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Ein Problem, das ich erst vor kurzem mit glMultMatrix hatte, war, dass ich statt mit Single-Werten, mit denen diese Funktion standardweise arbeitet, Extended-Variablen verwendet hab. Da aber glMultMatrix mit Zeigern arbeitet, kann das zu Problemen führen, zB, dass dann Objekte ins unendlich verschoben werden!

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Sep 25, 2005 12:45 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 26, 2005 21:13
Beiträge: 13
Wohnort: Dresden
Genau das war das Problem!!! Ich hatte die werte als double und das scheint glMultmatrix nicht zu mögen.

Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke. Danke.

:D


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Sep 25, 2005 13:08 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Bitte. Bitte. Bitte :)

Hier ne Erklärung von Sacha Willems, die er mir mal gegeben hat, mit Double statt Extended kommts aufs gleiche raus:
Zitat:
Warum? Einfach : Single hat 4 Byte, Extended 10. Wenn du also nen Zeiger auf eine 4x4-Extendedmatrix übergibst nimmt Newton (in der Single-Version) für jedes Matrizenelement 4 Bytes (=Größe von Single=). Bei einer Extendedmatrix belegt aber z.B. der erste Wert bereits die Bytes 0-9, also nimmt Newton (Zeiger auf eine Matrix, also kann Newton nicht wissen um welchen Datentyp es sich handelt) aus deinem ersten Extendedelement der Matrix 2 "1/2" Werte, Byte 0-3 Single1, 4-7 Single2, 8-10 Single3 und geht dann in den nächsten Extendedwert.

Man sollte sich also durchaus mal mit Datentypen auseinandersetzen, Extended ist nämlich wie gesagt für GL/Newton eine recht sinnlose Sache da man für jeden Wert 6 Bytes wegwirft. Von Newton gibts für größere Genauigkeit übrigens auch eine Double-Version.

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.033s | 15 Queries | GZIP : On ]