void njCnkSetSimpleLightIntensity( diff, ambi ) float diff float ambi
diff | ディフューズの強さ(0〜1.f) |
ambi | アンビエントの強さ(0〜1.f) |
njCnkSetSimpleLightIntensity( 1.0f, 0.0f ); この場合、ライトから90度の方向より反対側が真っ暗になります。 従いまして、通常は若干アンビエントを設定します。
njCnkSetSimpleLightIntensity( 1.0f, 0.2f );
この場合、20%より暗くはなりません。
njCnkSetSimpleLightIntensity( 0.0f, 1.0f );
この場合、すべて100%になりますので、陰影はつきません。 また、光源計算の結果1.0以上になると、スペキュラがつきます。
: njInitVertexBuffer( 1000000, 0, 1000, 0, 0 ); njInitMatrix( matrix, 8 , 0); njInit3D( vbuf, 4096 ); njInitView( &view ); njSetView( &view ); njCnkSetSimpleLight( 0.f, 0.f, 1.0f ); njCnkSetSimpleLightIntensity( 1.0f, 0.0f ); njCnkSetSimpleLightColor( 1.0f, 1.0f, 1.0f ); njClearMatrix(); njTranslate( NULL, 0.f, 0.f, -10.f ); njRotateXYZ( NULL, rx,ry,rz ); njCnkSimpleDrawObject( object );