2013-05-08 48 views
1

我被告知一個臉部的正常是'垂直於臉部的矢量',但我仍然沒有得到它,當試圖繪製三維形狀。有人能給我一個更清楚的解釋,或者(更好)一張圖嗎? 使我困惑的代碼塊是致電glNormal3f(x, y, z)臉部的正常情況如何?

+0

「*我被告知它是'一個垂直於臉部的矢量',但我仍然沒有得到它時,試圖繪製三維形狀*」好吧,你知道什麼「矢量」,「垂直」,和「臉」是什麼意思?如果是這樣,那麼難度到底是什麼? 3d形狀由面構成;這就是你如何繪製它。 – 2013-05-08 13:23:56

回答

3

快速谷歌,你可以find this tutorial,其包括下面的圖:

OpenGL

正如你可以看到,法線是垂直於面的方向矢量。它們用於照明計算,以便在定向照明時可以顯示正確的陰影。

+0

感謝您的幫助,我想我現在明白了。接受答案。 – Dan299 2013-05-08 13:24:11

2

面法線不同於不必垂直於面的頂點法線。

面部法線用於確定面部指向哪個方向。如果它指向遠離相機,則在渲染時可以忽略該面部。它還用於在執行快速平面或小平面渲染時確定面部的顏色。

頂點法線用於向對象添加圓度。如果你拿一個圓柱體並刻面,你會得到一個規則的多邊形管。使用面法線渲染這會給你這樣的事情:

flat shading

使用頂點法線人丁它給你:

smooth shading

你仍然可以看到面的兩端的圓柱體,但身體看起來很平滑。

相關問題