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

Aktuelle Zeit: Mi Jul 16, 2025 12:13

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 40 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 08, 2005 11:57 
Offline
DGL Member
Benutzeravatar

Registriert: Di Nov 26, 2002 22:12
Beiträge: 259
Wohnort: Dresden
Wenn du die Sicht nur auf einen Punkt zentrieren möchtest kannst du dafür gluLookAt nutzen

_________________
Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jederman ist überzeugt, dass er genug davon habe.
Rene Descartes, frz. Mathematiker u. Philosoph, 1596-1650


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 08, 2005 12:26 
Offline
DGL Member
Benutzeravatar

Registriert: Do Aug 25, 2005 16:00
Beiträge: 189
Programmiersprache: Java, C#
Naja, wenn ich es richtig verstanden hab, brauch ich aber für diesen Befehl die Koordinaten des Punktes auf den geblickt werden soll...
Und genau der dreht sich ja leider um einen anderen Punkt, ich hab also nur die "Startkoordinaten", den Rotationswinkel und die Achse um die er sich dreht...

Also wie gesagt, den Punkt blicken möchte, würde ich gern ausrechnen.


cya und Danke schonmal,
Deathball


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 08, 2005 12:34 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Das kannst du ja ganz einfach mit ein bissl Mathe ausrechnen:

Position(Punkt).x= cos(Winkel) * Radius
Position(Punkt).z= sin(Winkel) * Radius

_________________
"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: Sa Okt 08, 2005 12:39 
Offline
Ernährungsberater
Benutzeravatar

Registriert: Sa Jan 01, 2005 17:11
Beiträge: 2068
Programmiersprache: C++
Wenn du an dem Punkt bist wo du draufschauen willst, liest du die Matrix aus.
Die 4.te Spalte, die Position ist das interessante.
Dies sind die Koordinaten des Centers von GluLookAt.
Die 4te Koordinate wird dabei verworfen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 25, 2005 14:14 
Offline
DGL Member
Benutzeravatar

Registriert: Do Aug 25, 2005 16:00
Beiträge: 189
Programmiersprache: Java, C#
Hi! Bei mir is ne neue Frage aufgetaucht...
Bei gluLookAt wird von einem "Up-Vektor" gesprochen...

Zitat:
Die vom "Up-Vektor" beschriebene (und auf die Betrachtungsfläche gelegte) Richtung wird auf die positive Y-Achse gelegt, so dass dieser im Viewport nach oben zeigt (daher "Up-Vektor). Dieser Vektor darf nicht parallel zur Sichtlinie vom Betrachtungspunkt zum Referenzpunkt liegen!


Das würde ich gerne verstehen - aber bisher hab ich es noch nicht geschafft.



Hat jemand ne andere, vielleicht ausführlichere Erklärung was ein Up-Vektor ist und wozu er gut ist? Und vielleicht noch ein paar Beispiele(wobei ich dir mit ein bisschen Glück selbst im Forum per Suchfunktion finde - bisher hab ich zwar ein paar Beispiele gefunden, bei denen konnte ich aber nicht erkennen welchen Wert der Up-Vektor hatte, da es Variablen waren).


cya und Danke schonmal im Vorraus,
Deathball


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 25, 2005 17:36 
Offline
DGL Member
Benutzeravatar

Registriert: So Dez 21, 2003 17:36
Beiträge: 141
Ein Up-Vektor sagt eigentlich aus, wo "oben" ist :) D.h. gluLookAt richtet die Kamera auf das Objekt aus. Ohne einen Up-Vector anzugeben, wäre es nicht eindeutig, wie die Kamera zu verdrehen wäre. Stell dir vor, du richtest deine Kamera auf einen Tisch, und die positive Y-Achse zeigt bei dir "nach oben". Dann wäre dein Up-Vector (0,1,0). Wenn du den Up-Vector (0,-1,0) wählst, siehst du die Tischbeine oben und bei nem Vektor von (1,0,0) ist die Kamera nach rechts (? *denk*) gedreht, also die Tischplatte ist dann auf der linken Seite zu sehen. Kurz und knapp: Der Up-Vektor gibt die Drehung der Kamera auf der Geraden vom Kamera zum Objekt.

Hoffe, du hast das verstanden :P


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Okt 26, 2005 08:46 
Offline
DGL Member
Benutzeravatar

Registriert: Do Aug 25, 2005 16:00
Beiträge: 189
Programmiersprache: Java, C#
So einfach? Kein Kniff, Trick, oder sonstwas dabei? Nix? Gar nix?

Verdammt, ich glaub ich denk viel zu kompliziert :oops:


Aber danke für die Erklärung - denk mal das ich deine Hoffnung erfüllen kann ^^


cya und Danke nochma
Deathball


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 29, 2005 18:04 
Offline
DGL Member
Benutzeravatar

Registriert: Do Aug 25, 2005 16:00
Beiträge: 189
Programmiersprache: Java, C#
Hi!

Ich würde gerne nen Schriftzug bzw. nen Text darstellen.
Jetzt hab ich mich ein bisschen in die BombermanFont.pas aus dem Bomberman-Tutorial eingelesen und wollte es ausprobieren.
Also schnell ne kleine Änderung an ihr vorgenommen(Header zu DGLOpenGL geändert) und ausprobiert...

Allerdings krieg ich jetzt bei folgender Stelle:
Code:
  1.  TextureFont := TTexFont.Create('font.tga');


nen Zugriffsfehler:
Bild

Wenn ich das Original benutze, also mit dem OpenGL12-Header bekomme ich auch einen Zugríffsfehler, allerdings ist die Zugriffsverletzung diemal bei Adresse 00000009 und die zweite Adresse lautet 0048E690.

Im zweiten Fall würde ich mir das mit den unterschiedlichen Headern erklären(ich benutze den DGLOpenGL-Header).
Aber im ersten?(btw., darf bzw. kann man überhaupt einfach so die Header bei ner Unit austauschen, also die OpenGL12 Header einfach durch die DGLOpenGL.pas ersetzen?)

Der einzige Headerunterschied der da noch ist, ist das ich in meinem Projekt die glBitmap.pas benutze, und die BombermanFont-Unit die glBmp.pas. Aber kann deswegen ein Zugriffsfehler entstehen?

cya und Danke für evntl. Antworten schonma im Vorraus,
Deathball


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 29, 2005 19:41 
Offline
Ernährungsberater
Benutzeravatar

Registriert: Sa Jan 01, 2005 17:11
Beiträge: 2068
Programmiersprache: C++
Bitte Link angeben. Musste jetzt erst noch suchen wo die Datei ist.

Änderung auf dglOpenGL.pas ist problemlos möglich.
Unterschiede sind nur in der Initialisierung zu finden.

Ich gehe davon aus, dass der Fehler das TTexFont.Create ist.
Dort vermute ich, dass es die glBMP ist.
Der Rest sollte solch einen Fehler nicht verursachen.

Bei solchen Problemen sollte man aber immer mit F5 im Quellcode rumspielen und genau schauen wann er auftritt.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Okt 29, 2005 19:45 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Hatte das Problem auch mal bei den Bomerbam-Sources. Änder' bei allen Units, die OpenGL verwenden den header auf dglopengl und pass' die Initialisierung an. Dann läuft's ;)

YES! Post #500 ;)

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


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 40 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]