1
我想爲一個簡單的球體射線追蹤應用實現高光和漫射照明,但是我的矢量有問題。射線追蹤照明
我想使用以下來更新燈光,但生成的圖像看起來完全一樣,所以我知道我做錯了什麼。我假設我以某種方式搞亂了這些媒介。命中是命中的球體,而思維是與球體點的距離。 Pir,豬,pib是顏色的rgb。
P3D intersection = ray.position.add(ray.direction).scale(mindis);
P3D l = intersection.sub(light).normalize();
P3D n = hit.center.sub(intersection).normalize();
double dot = l.dot(n);
P3D f = l.add(n).scale(-2.0 * dot);
double dot2 = f.dot(ray.direction);
pir += dot2 * 20;
pig += dot2 * 20;
pib += dot2 * 20;
是的,這是一個錯誤,但圖像依然不改.. – Neutralise
,圖像不會改變這一事實表明多一些基本問題。嘗試找到可以改變圖像的東西。 –
如果我手動更改顏色,它會改變,代碼的組件是好的。問題出在我上面的代碼中,它沒有正確更新像素顏色以適應照明。 – Neutralise