irrlicht中設定平行光

2021-08-23 11:53:49 字數 572 閱讀 4691

使用scene manager的addlightscenenode,預設加入的是點光源,設定平行光,需要自己設定slight,將其type設定為elt_directional,這都好說,問題是光的方向,被誤導了一下,因為ilightscenenode本身沒有setdirection之類的方法,而slight::direction文件中說是read only的,怎麼回事?自己直接設了下,完全沒有作用,果然read-only啊。於是檢視irrlicht原始碼,在clightscenenode類中,有乙個方法dolightrecalc,這個方法中,對於平行光:

lightdata.direction = core::vector3df(.0f,.0f,1.0f);

getabsolutetransformation().rotatevect(lightdata.direction);

lightdata.direction.normalize();

原來是根據transform重新計算這個方向,所以direction是read-only的。直接對light node執行rotate就可以設定方向了~

偏偏example中沒有用平行光的例子,害我找了好久

irrlicht中設定平行光

使用scene manager的addlightscenenode,預設加入的是點光源,設定平行光,需要自己設定slight,將其type設定為elt directional,這都好說,問題是光的方向,被誤導了一下,因為ilightscenenode本身沒有setdirection之類的方法,而sl...

16 光照(平行光)

1.基本概念 著色 根據光照條件,重建 物體表面明暗不一效果 的過程 光源型別 1 平行光 沒有衰減的平行的光線,類似於太陽光。用乙個方向和乙個顏色定義。2 點光源 理想化為質點點光源,類似於人造燈泡,有光線衰減。用光源位置和顏色定義。3 環境光 用於模擬真實世界中的非直射光 由光源發出經過牆壁或其...

WebGL 平行光和環境光

馮氏反射模型引申了這個四步走的光照系統,首先所有的光線都有以下兩個屬性 發生漫反射光的rgb值。發生鏡面反射光的rgb值。其次所有材質都有以下四個屬性 反射的環境光rgb值 反射的漫反射光rgb值 反射的鏡面反射光rgb值 物體的反光度,它決定了鏡面反射的細節 對於場景中的每一點,它的顏色都是由照射...