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

njSetLightIntensity

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

書式

void njSetLightIntensity( *ptr, spc, dif, amb )
NJS_LIGHT *ptr
Float spc
Float dif
Float amb

引数

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

戻値

なし

解説

NINJAライトモデルでは、一般的なスペキュラ光(ハイライト)・ディフューズ光(通常光)・アンビアント光(環境光)の3要素から成り立ちます。 この関数はそれぞれの輝度(強度)を設定し、各輝度は、一般的には0−1.fの値で指定されますが、状況に応じて1.f以上の値が効果することもあります。

用例

#include <Shinobi.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