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

Aktuelle Zeit: Mo Jul 07, 2025 04:29

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



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Position der Lichtquelle
BeitragVerfasst: Di Sep 18, 2007 12:49 
Offline
DGL Member

Registriert: Mi Mär 28, 2007 17:45
Beiträge: 131
Hallo,

ich habe eine grundsätzliche Frage zur Postionierung der Lichtquelle. Zuerst aber eine Mitteilung: Um als Anfänger ein Gespür für die Licht- und Materialeinstellungen zu bekommen, habe ich ein kleines Delphi-Programm geschrieben, mit dem diese Dinge untersucht werden können. Ich kann mir vorstellen, dass auch andere an dem Programm interessiert sind, sei es, um damit herumzuspielen, sei es, um an dem Programm zu basteln. Wenn ihr möchtet, könnt ihr den Quelltext von meiner Webseite herunterladen:

http://www.erinacom.de/tux/newtux/opengl/light00.html

Mir selbst hat das Programm schon viel geholfen. Nur eine Sache ist noch unklar, und damit zu meiner Frage: Es ist irgendwie nicht nachzuvollziehen, wie sich die w-Komponente der Lichtposition auswirkt. Sucht man nach Informationen darüber, dann findet man z.B. den Hinweis, dass die Koordinaten durch die Modelview-Matrix gezogen werden, aber das spielt ja keine Rolle, wenn die Beleuctung in der Identity-Matrix eingestellt wird, was wohl meistens der Fall ist. Ferner liest man, welche Bedeutung der Wert 0 hat: Die Lichtquelle wird so weit weggeschoben, dass nur noch die Richtung interessiert und die Helligkeitsabnahme ausgeschaltet wird. Doch was ist, wenn der w-Wert n i c h t auf 0 steht? Was drückt er dann genau aus? Komischerweise habe ich darüber noch keine exakten Hinweise gefunden. Tatsache ist, dass sich die Verhältnisse ändern, wenn die w-Komponente verstellt wird. Skalierung des Richtungsvektors? Die Beobachtungen sprechen dagegen. Aber was?

erin


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 18, 2007 13:22 
Offline
DGL Member

Registriert: Mo Dez 20, 2004 08:58
Beiträge: 442
Wohnort: Mittweida (Sachsen)
Wie hier besprochen bezieht sich die w-Koordinate auf die 4. Dimension. Normalerweise setzt man hier immer eine 1, außer wie von Dir beschrieben bei unendlich weit entfernten Lichtern. Andere Werte führen zu unvorhergesehenen (zumindest für ein dreidimensionales Wesen) Ergebnissen. Das gleiche gilt übrigens für die Manipulation der 4. Zeile in den Matritzen (mit Rotationen um w kannst Du z.B. Deine linke in die rechte Hand überführen).

_________________
Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 18, 2007 15:25 
Offline
DGL Member

Registriert: Mi Mär 28, 2007 17:45
Beiträge: 131
Sidorion hat geschrieben:
Wie hier besprochen bezieht sich die w-Koordinate auf die 4. Dimension..

Hm, sagenhafte Diskussionsrunde. Um folgen zu können, brauche ich erst einige Bierchen. Lektüre für heute Nacht, mal sehen.

Zurück ans Licht. Wenn ich dich richtig verstanden habe, ist als 4. Positionsparameter nur die 0 oder 1 sinnvoll. Die 0 ist klar, also abgehakt. Demnach gibt es für die 1 nur einen vernünftigen Grund, nämlich dass die Entfernung nicht unendlich weit sein soll. Mit anderen Worten, die Lichtquelle lässt sich irgendwohin positionieren, meinetwegen mitten in der Szenerie. Beispiel: Ich stelle mir ein Fussballstadion vor, beleuchte es von innen und betrachte mir das Ganze von außen und oberhalb, aus der Dunkelheit heraus. Sehe ich das richtig?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 18, 2007 15:29 
Offline
DGL Member

Registriert: Mo Dez 20, 2004 08:58
Beiträge: 442
Wohnort: Mittweida (Sachsen)
Ja. Für die Positionierung der Lichtquelle im Raum sind die ersten drei Koordinaten zuständig. Hier ist allerdings wichtig, ob die Lichtquelle vor oder nach der Projektionsmatrix gesetzt wird. Da gibts mbMn auch ein Tut zu.

_________________
Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 18, 2007 16:15 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Jan 31, 2005 11:02
Beiträge: 432
Wohnort: Rheinlandpfalz
erin hat geschrieben:
Die 0 ist klar, also abgehakt. Demnach gibt es für die 1 nur einen vernünftigen Grund, nämlich dass die Entfernung nicht unendlich weit sein soll. Mit anderen Worten, die Lichtquelle lässt sich irgendwohin positionieren, meinetwegen mitten in der Szenerie.

Die x,y und z Koordinaten werden durch die w-Koordinate geteilt. Deshalb ist bei w=1 die Lichtposition = x,y,z.
Bei w=0 würde quasi durch 0 geteilt werden, d.h. die Lichtquelle würde unendlich weit weg liegen. Der Lichtvektor wäre somit x,y,z.

_________________
http://texelviews.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 18, 2007 20:06 
Offline
DGL Member

Registriert: Mi Mär 28, 2007 17:45
Beiträge: 131
MatReno hat geschrieben:
Die x,y und z Koordinaten werden durch die w-Koordinate geteilt.


Auf diese Eigenschaft ist man nicht angewiesen, aber es ist gut, den Zusammenhang zu wissen. Die Sache ist nun geklärt:

0 - wenn tageslichtähnliche Beleuchtungen hergestellt werden sollen
1 - um eine oder mehrere Funzeln in die Landschaft zu setzen.

Danke


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 » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 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.006s | 14 Queries | GZIP : On ]