Abstand aus Z-Puffer: Z-Puffer linearisieren, woher kommt diese Formel?!
-
Hallo,
ich habe mir gerade angelesen, dass der Z-Puffer-Wert reziprok zum Abstand ist, also:Puffer-Wert(Z-Abstand) ~ 1 / Z-Abstand
Wobei
Puffer-Wert(Z-nah) = 0,
Puffer-Wert(Z-fern) = 1.
Sprich der Puffer-Wert liegt im Bereich [0 ... 1], da Z-nah < Z-Abstand < Z-fern.Jetzt möchte ich gerne den Abstand aus den Puffer-Werten errechnen, und als Graustufe abbilden.
Da ich nicht der erste bin, der das machen möchte, habe ich diese Formel gefunden:Normalisierter-Abstand = ( 2.0 * zNear ) / ( zFar + zNear - depth * ( zFar - zNear ) )
Weiß zufällig jemand, woher diese Formel kommt?!
Der Z-Abstand liegt im Bereich [zNear ... zFar].
Und der normalisierte Abstand liegt im Bereich [?? ... 1], wies aussieht.
Aber so wie ich das sehe, sollte der doch eher im Bereich [0 ... 1] sein...Wie genau wurde da normalisiert??? Das würde mich mal interessieren...
Gruß
OpenGl-Fifi
-
Hat sich erledigt.. Wie bei allem im Netz, kann eine gewisse Portion Skepsis nicht schaden, sag ich nur..
-
Nenn uns doch bitte die Formel, wie man nun den Z-Puffer linearisiert.