njSetLightIntensity
njCreateLightによって設定されたライトの強度を設定します。

書 式

#include <NINJA.H> 
void njSetLightIntensity( *ptr, spc, dif, amb )
NJS_LIGHT *ptr
Float spc
Float dif
Float amb

引 数

NJS_LIGHT *ptr
ライトのポインタ
spc
スペキュラ光の輝度
dif
ディフューズ光の輝度
amb
アンビアント光の輝度

返 値

なし

エラー

なし

機 能

NINJAライトモデルでは、一般的なスペキュラ光(ハイライト)・ディフューズ光(通常光)・アンビアント光(環境光)の3要素から成り立ちます。

この関数はそれぞれの輝度(強度)を設定し、各輝度は、一般的には0−1.fの値で指定されますが、状況に応じて1.f以上の値が効果することもあります。


用 例

#include <NINJA.H> 
...........

NJS_LIGHT light;

sbInitSystem( NJD_RESOLUTION_VGA, NJD_FRAMEBUFFER_MODE_RGB565, 1);
njCreateLight(&light, NJD_SPEC_DIR);
...........
/* スペキュラ付き平行光源のスペキュラ・デフューズ輝度を0.5fに設定 */
njSetLightIntensity(&light, 0.5f, 0.5f, 0.f);

備 考

njCreateLightでライトが指定されている必要があります。
指定されたライトは必ずしもすべての要素の輝度を必要とせず、この時はこの輝度計算は無視されます。

例えば上の例で njSetLightIntensityの第四の引数(環境光)の0.fの変わりに0.5fを代入してもこのライトに何も影響しません。


関 連

njCreateLight

njSetLightIntensity

Copyright SEGA ENTERPRISES, LTD., 1998