njSetLightRange | |
njCreateLightによって設定されたライトの限界距離を設定します。 |
#include <NINJA.H> void njSetLightRange( *ptr, nrang, frang ) NJS_LIGHT *ptr Float nrang Float frang
そこでNINJAライトモデルでは、ある光源までの距離より短くなると光源計算中の最大輝度をとり続けます。
この限界値をここでは前方の限界距離として設定します。
また、光源から離れるにつれて光は徐々に減衰していきますが、すべての距離を計算するのはあまり重要な意味を持ちません。
この時の減衰の計算を省略(カットオフ)しはじめる距離、いいかえれば光のなくなる距離を、ここでは後方の限界距離として設定します。
![]() | デフォルト値で nrangは1.fが設定されていますが、nrang はモデル自身の大きさもしくはモデル間の距離を考慮に入れて設定する必要があります。 |
#include <NINJA.H> ........... NJS_LIGHT light; sbInitSystem( NJD_RESOLUTION_VGA, NJD_FRAMEBUFFER_MODE_RGB565, 1); njCreateLight(&light, NJD_SPEC_POINT); ........... /* スペキュラ付き点光源の前方の限界距離を20.f、後方を80.fに設定 */ njSetLightRange(&light, 20.f, 80.f);
njSetLightRange |