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

Aktuelle Zeit: Mi Jul 16, 2025 09:20

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



Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Sa Mär 13, 2004 12:01 
Offline
DGL Member

Registriert: Do Mär 11, 2004 12:33
Beiträge: 24
Hallo!

Im ersten eurer Bewegungs-Tutorials wird folgender Code verwendet:
Code:
  1. // Den Look-Vektor zuerst um die Z-Achse...
  2.   RotateVector(LookVec, RotZAxis, -DegToRad(RotateZ));
  3.   // ...um die Y-Achse...
  4.   RotateVector(LookVec, RotYAxis, -DegToRad(RotateY));
  5.   // ... und um die X-Achse drehen.
  6.   RotateVector(LookVec, RotXAxis, -DegToRad(RotateX));


es gab schon einen Thread hier wo gefragt wurde in welcher Unit sich die Funktion RotateVektor() befindet, worauf jemand sagte es gibt in der Geometry.pas nur VectorRotate().
Ich habe das gleiche Problem und VectorRotate verlangt einen anderen Typ von Vektor.

Gibt es eine Unit in der RotateVector vorhanden ist oder wie muss ich das machen?

mfg mandumoal :cry:


Zuletzt geändert von mandumoal am Sa Mär 13, 2004 14:31, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 13:52 
Offline
DGL Member

Registriert: Do Mär 11, 2004 12:33
Beiträge: 24
ok, das Problem hat sich inzwischen gelöst, meine Version der Geometry.pas war zu alt.

Mit der, die dem SourceCode Download beliegt funktioniert es.

mfg mandumoal


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 14:36 
Offline
DGL Member

Registriert: Do Mär 11, 2004 12:33
Beiträge: 24
Also es ist gar nichts gelöst! :(

Es scheint ja allseits bekannte Probleme zu geben mit dglOpenGl und Geometry.pas ( in dem Artikel über die SDK veröffentlichung beschrieben)

Mein Compiler meckert bei sovielen Funktionen der Geometry.pas das mir bald schlecht wird:



Code:
  1.  
  2. [Fehler] bew.pas(126): Inkompatible Typen: 'TGLMatrixf4' und 'THomogeneousFltMatrix'
  3. [Fehler] bew.pas(130): Es gibt keine überladene Version von 'VectorTransform', die man mit diesen Argumenten aufrufen kann
  4. [Fehler] bew.pas(135): Es gibt keine überladene Version von 'MatrixMultiply', die man mit diesen Argumenten aufrufen kann


der Code stammt aus dem Bewegungs-Tutorial, (Api) aber OpenGl.pas verwendet, und damit auch keine Probleme macht.

Kann mir jemand helfen bzw mich auf andere Threads zu dem Thema hinweisen?

Danke

mfg mandumoal


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 15:00 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Da keiner aus dem OpenGL2-Portteam (inkl. mir) die Geometry.pas nutzt gibts da dann wohl Probleme mit eben dieser, da diese nicht getestet wurde (die meisten von uns nutzen eigenen Matehlibs, ist im Endeffekt auch besser als dieses Geometry.pas-Ungetüm).

Was mich aber wundert ist die Tatsache das er sich bei den Datentypen beschwert, denn die dglOpenGL.pas wurde so entwickelt das sie besonders auf diesem Gebiet eigentlich 100% kompatibel zur OpenGL12.pas sein sollte, deren Macher auch die Geometry.pas erstellt hat.

Poste mal die Deklarationen der Variablen bei denen der Compiler rummeckert und die entsprechenden Codezeilen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 15:03 
Offline
DGL Member

Registriert: Do Mär 11, 2004 12:33
Beiträge: 24
Das wird hier langsam zum Selbstläufer :D

Jedenfalls habe ich es jetzt doch noch hinbekommen.
(manchmal ist es so einfach, das man es garnicht ausprobiert :D )

Für die die es interessiert:
Der Typ für die ObjektMatrix muss so aussehen:

Code:
  1. ObjMat   : THomogeneousFltMatrix;


Der für die Temporäre Matrix in UpdateMovement auch:

Code:
  1. procedure UpdateRotation(RotAxis: Integer; Ang: Single);
  2. var
  3.   TmpMat  : THomogeneousFltMatrix;
  4. begin
  5. .
  6. .


Viellleicht auch noch was weiss ich nicht mehr

Vielen Dank für eure Hilfe :wink:

mfg mandumoal


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 15:05 
Offline
DGL Member

Registriert: Do Mär 11, 2004 12:33
Beiträge: 24
hab 3 Minuten zum Schreiben gebraucht :oops:

Die haben wohl die Typenbezeichnungen geändert. (Siehe voriger Post)
Jedenfalls geht es jetzt.

mfg mandumoal


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 13, 2004 16:20 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
... womit wieder einmal der Vorteil eines eigenen BaseCodes bestätigt wäre :wink: .
Die Geometry.pas ist ausgezeichnet - ich würde mir aber die Pascal-Version organisieren (der Geschwindigkeitsverlust im Vergleich zur Assemblerversion ist vernachlässigbar) und diejenigen anpassen, die du auch sonst verwendest.
Es bringt wirklich nichts fünf verschiedene Deklarationen für einen Vektor zu haben, der aus drei Singles zusammengesetzt ist ...

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


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


Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 8 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]