有人知道爲什麼鏡面反射被定義爲 反射= 2(Normal。Light)Normal - Light 其中Normal是平面的法線, Light是來自光源的歸一化矢量?關於鏡面反射的問題
1
A
回答
2
若要反映一個向量,您需要反轉位於特定軸上的該向量的組件。例如,要從x軸反射一個矢量,只需要翻轉y分量的符號即可。另一種方法是將y分量乘以-1。實現這一目標的另一種方法是從自身中減去兩倍的y分量。最後一個變體是您網站的公式中使用的變體。
我們想從我們的方向矢量中減去表面法線的一些倍數。 (Normal.Light)項爲您提供了沿着法線的光矢量分量(類似於上例中的y分量)。然後,我們需要兩倍的數量(因此2),我們想要改變向量的法線方向,所以這個數字需要乘以法線。你似乎已經在減號周圍交換了條件。
0
這也許是這裏所描述的一般反映的結果:
)
你可能需要知道一個位向量的幾何形狀或線性代數理解爲什麼雖然。
相關問題
- 1. 關於反演的問題
- 2. 反射問題
- 3. 反射模式 - 面向對象問題
- 4. 反射C#問題
- 5. 反射問題createRfcommSocket
- 6. Java反射問題
- 7. Java反射問題
- 8. java反射問題
- 9. C#反射問題
- 10. CSS:背景鏡像反射
- 11. 關於休眠映射的問題
- 12. 光線追蹤 - 如何將漫反射和鏡面反射色相結合?
- 13. 「反射鏡」上的二維線條反射
- 14. TideSDK中的頁面上的鏡像反射
- 15. C#反射Property.GetValue()問題
- 16. 路由和反射問題
- 17. Rails內部反射問題
- 18. 問題,使用Java反射
- 19. 反射圈/矩形問題
- 20. 類型符號和Scala反射鏡之間的關係
- 21. 爲什麼我的漫反射/鏡面照明不起作用?
- 22. 使用鏡面反射的3d攝像機屬性
- 23. 斯威夫特鏡面反射沒有返回上的UIView
- 24. 關於Maven2存儲庫鏡像的問題
- 25. 關於子類的Java靜態反射
- 26. 關於php頁面創建的問題
- 27. 關於主頁面的問題
- 28. 關於面向對象的問題
- 29. 關於頁面大小的問題
- 30. 關於CUDA編程的面試問題?
感謝您的回覆@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