2012-12-28 65 views
0

我想在我的pixelshader中輸出每個像素的實際相機距離。這意味着,結果應該(除了精度和夾緊的一些細微變化之外)不依賴於近/遠剪切平面。因此,因爲近平面中間的像素比邊界上的像素更接近相機,所以恰好位於近平面(並平行於它)的平面應該不會輸出均勻的結果。CG/GLSL如何計算每個像素的相機距離?

如何計算像素着色器中每個像素的實際相機距離? (實際着色語言無所謂)

回答

-3

你發送的相機位置是統一的。 您將該位置發送給片段着色器。 您可以使用這些矢量的內置距離函數。

It looks like this,但是如果你不需要它,不用費心將它複製到.w。

或者,將頂點位置乘以ModelView矩陣,並在其上使用length()。