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

njSetLightAngle

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

書式

void njSetLightAngle( *ptr, iang, oang ) 
NJS_LIGHT *ptr 
Angle iang 
Angle oang 

引数

*ptr   ライトのポインタ
iang   内側のコーン角(円錐角)の限界値
oang   外側のコーン角(円錐角)の限界値

戻り値

なし

解説

njCreateLight関数によって設定されたスポットライト・スペキュラをもつライトの限界角(チャンクモデルを除く)を設定します。 たとえば、スポットライトが舞台に照らされているとします。 ライトは舞台上で円錐状に照らされていますが、光の円錐の外側ですぐに暗くなるのではなく徐々に減衰していきます。 このときの円錐のエッジの角度もしくは減衰の始まる角度がこの関数の引数iangとなります。 次に、この減衰の広がりは90度を超すことはありませんが、スポットライトが鋭くなればなるほど90度近くの計算は意味をもたなくなります。 このときの減衰の計算を省略(カットオフ)しはじめる角度、いいかえれば光のなくなる角度を引数oangで設定します。

用例

	:
NJS_LIGHT light;
	:
njCreateLight(&light, NJD_SPEC_POINT);
	:
/* スペキュラ付き点光源の内側限界角を30度、外側を60度に設定 */
njSetLightAngle(&light, NJM_RAD_ANG(NJD_PI/6.f),
	NJM_RAD_ANG(NJD_PI/3.f));

備考

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

参照

njCreateLight()
njSetLightRange()

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