Ninjaライブラリ - ライト関数

njSetLightRange

njCreateLightによって設定されたライトの限界距離を設定

書式

void njSetLightRange( *ptr, nrang, frang ) 
NJS_LIGHT *ptr 
Float nrang 
Float frang 

引数

*ptr   ライトのポインタ
nrang   前方の限界距離
frang   後方の限界距離

戻り値

なし

解説

njCreateLight関数によって設定されたスポットライト・距離計算を必要とするライトの限界距離を設定します。 点光源に近づくほど明るくなりますが、モニタで表現する明るさには限界があります。 そこでNinjaライトモデルでは、ある光源までの距離より短くなると光源計算中の最大輝度をとり続けます。 この限界値をここでは前方の限界距離として設定します。 また、光源から離れるにつれて光は徐々に減衰していきますが、すべての距離を計算するのはあまり重要な意味をもちません。 このときの減衰の計算を省略(カットオフ)しはじめる距離、いいかえれば光のなくなる距離を、ここでは後方の限界距離として設定します。 デフォルトでnrangは1.fが設定されていますが、nrangはモデル自身の大きさもしくはモデル間の距離を考慮に入れて設定する必要があります。

用例

	:
NJS_LIGHT light;
	:
njCreateLight(&light, NJD_SPEC_POINT);
	:
/* Front distance limit of the point light source
   with specula is set to 20.f
   and the back distance limit to 80.f */
njSetLightRange(&light, 20.f, 80.f);

備考

njCreateLight関数でライトが指定されている必要があります。

参照

njCreateLight()
njSetLightAngle()

njSetLightRange
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999