有人知道爲什麼鏡面反射被定義爲 反射= 2(Normal。Light)Normal - Light 其中Normal是平面的法線, Light是來自光源的歸一化矢量?關於鏡面反射的問題
1
A
回答
2
若要反映一個向量,您需要反轉位於特定軸上的該向量的組件。例如,要從x軸反射一個矢量,只需要翻轉y分量的符號即可。另一種方法是將y分量乘以-1。實現這一目標的另一種方法是從自身中減去兩倍的y分量。最後一個變體是您網站的公式中使用的變體。
我們想從我們的方向矢量中減去表面法線的一些倍數。 (Normal.Light)項爲您提供了沿着法線的光矢量分量(類似於上例中的y分量)。然後,我們需要兩倍的數量(因此2),我們想要改變向量的法線方向,所以這個數字需要乘以法線。你似乎已經在減號周圍交換了條件。
0
這也許是這裏所描述的一般反映的結果:
)
你可能需要知道一個位向量的幾何形狀或線性代數理解爲什麼雖然。
相關問題
- 1. 關於棱鏡4的問題
- 2. 關於反演的問題
- 3. 此像素着色器中的漫反射和鏡面反射
- 4. 爲三維鏡面反射反射光的邏輯
- 5. 刪除NSManagedObject反射關係的問題
- 6. 反射問題
- 7. 反射問題
- 8. 關於反射的問題,在c中的屬性#
- 9. java反射投射問題
- 10. 反射模式 - 面向對象問題
- 11. Java反射問題
- 12. Java反射問題
- 13. 反射問題createRfcommSocket
- 14. 反射C#問題
- 15. C#反射問題
- 16. c#反射問題
- 17. java反射問題
- 18. C#反射問題
- 19. Java反射問題
- 20. CSS:背景鏡像反射
- 21. 關於休眠映射的問題
- 22. 關於反轉字符串的問題
- 23. 基於鏡像的反射與傳統反射有什麼區別?
- 24. 光線追蹤 - 如何將漫反射和鏡面反射色相結合?
- 25. 「反射鏡」上的二維線條反射
- 26. 路由和反射問題
- 27. 問題,使用Java反射
- 28. OpenGL:反射矩陣問題
- 29. 反射圈/矩形問題
- 30. C#反射Property.GetValue()問題
感謝您的回覆@phkahler,該公式實際上在這裏@ http://en.wikipedia.org/wiki/Specular_reflection中給出。我想應該是正確的。 我想我可以理解你想說什麼。反射的矢量是正常的 - 光。然而,我並不真正瞭解我們需要點產品的正常和光照的部分。以及爲什麼需要乘以2. – Yijinsei 2010-12-13 16:25:18
如果你仔細閱讀,他會解釋它。點積是光矢量在法線上的投影,爲了得到反射矢量,需要兩次。 – 2010-12-13 16:36:57
謝謝你的啓示= x,但我真的不能真正掌握點產品的概念是光矢量到正常的項目雖然.. – Yijinsei 2010-12-13 16:59:40