Die Position der Lichtquelle: ist die an dieser Stelle schon mit der zur "Setzzeit" aktiven ModelView-Matrix multipliziert? Weil es gibt ja ne andere Beleuchtung, wenn ich das Licht z.B. vor oder nach meiner Kamerasetzung positioniere in der FixedFunction pipeline.
Zweite Frage:
Code:
vec3 Normal = normalize(gl_NormalMatrix * gl_Normal);
Warum mit gl_NormalMatrix?. Das ist doch die Inverse und würde eine Rücktransformation auslösen. Eigentlich müsste ich doch auch hier mit der ModelView multipliziern.
Oder, um dasselbe KS von Licht- und Normalenvektor zu erhalten den Lichtvektor diesmal wirklich mit der Inversen (also gl_NormalMatrix) multiplizieren. So macht es z.B. Zerbst in seinem Buch zur Spieleprogrammierung(zwar in DirectX, aber Prinzip ist ja dasselbe; wobei er sogar diese Rücktrafo des Lichtes außerhalb des Shaders vorm Setzen der Lichtquelle macht und so die Berechnung nur einmal nötig ist und nicht bei jedem Vertex wie im Shader).
Könnte ja sein, dass dadurch die Abweichung vom Tut-Shader zu Standard-OpenGL kommt?
Ausm Tut hat geschrieben:
Warum die Farben nicht ganz mit der OpenGL-hauseigenen Beleuchtung zusammenpassen, kann ich leider nicht sagen.
Kann mir da wer Licht ins Dunkel bringen?
edit: kann das mal wer ins Shader-Abteil verschieben? Hab grad gesehen, dass ich ja garnicht im Shader-Bereich war^^
_________________ __________
"C++ is the best language for garbage collection principally because it creates less garbage." Bjarne Stroustrup
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
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.