Re: [請益] 請教 Normal Map 的相關問題
※ 引述《pleaselouis (LOUISN)》之銘言:
: 推 NDark:反過來 , 光源 - 3D物件的座標 , 這樣可以work嗎? 07/07 20:40
: → NDark:記得向量要normalize...超過1.0裡面計算會overflow 07/07 20:41
: 非常謝謝你的幫忙 果然是因為沒有做 正規化...<囧"
: 只需要將我之前提到的 : 光線的"向量座標" = 3D物件的座標 - 光線的座標
: 將光線的"向量座標" 丟到 D3DXVec3Normalize() 內就可以了
: 推 darkflier:你應該要了解的是什麼是normal map 為什麼要用他 07/07 21:11
: → darkflier:而不是專注在這些看不懂的方程式 07/07 21:11
: → darkflier:等你了解什麼是normal map之後你自然知道要怎樣使用 07/07 21:12
: → darkflier:你還提到了複數光的問題...那代表你現在需要的是 07/07 21:15
: → darkflier:知道什麼叫做打光 打光的用意在哪 07/07 21:15
: 我今天馬上把我手頭上 所有DirectX書中關於打光的章節再看一次
: 但是我還是不太了解 在擁有複數光源的場景中 要如何判定
: 目前我的想法是將所有的 光線與3D物件的"距離" 作排序
: 將距離最近的燈光 設定為 Normal Map 的參數
: 但是這樣一來的話 就只有一組燈光會對3D物件有 Normal Map 的效果
: 目前我對 打光 的認知是每個多邊形的"頂點" 根據其受到的光的顏色
: 作內插法運算 藉此達到讓多邊形有顏色漸層的視覺效果
你可能必須先去看一下基本的圖學
了解 光線方向 法線方向 觀者方向 如何影響這個點受光的顏色
如果你瞭解的話就不會有 "只有一組燈光會對3D物件有 Normal Map 的效果" 這種想法
你這邊打光的認知對於不使用pixel shader來講是正確的...
但如果有用normal map 就必須使用pixel shader了
pixel shader也就是每個pixel都要計算打光(shader裡的code就是對每個點打光的計算)
如果沒有normal map ,法線向量只能由三角形頂點的法線向量內差而來...
這樣只能表現出平滑的物體
如果有normal map 就可以讓 法線方向很有變化 以表現細節
: 當然還有關於打光的種類 : 點光源 平行光源 聚光燈 也有基礎的認識
: 但是就我目前的所知的資訊 對於如何解決問題依然是沒有任何的頭緒
: 因此希望可以請版上的前輩 再度給小弟一些建議與指導 謝謝大家 <(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.16.234
推
07/10 01:15, , 1F
07/10 01:15, 1F
→
07/10 01:16, , 2F
07/10 01:16, 2F
推
07/10 16:42, , 3F
07/10 16:42, 3F
討論串 (同標題文章)