njCnkSetSimpleLight | |
njCnkSimpleDrawObject(njCnkSimpleDrawModel)用ライトの設定 |
#include <Ninja.h> void njCnkSetSimpleLight( x, y, z ) FLoat x, y, z
njCnkSimpleDrawObject(njCnkSimpleDrawModel)用のライトを設定します。
ベクトルの座標系はスクリーンに固定の座標系です。
たとえば、
njCnkSetSimpleLight( 0.0f, 0.0f, 1.0f );のように設定すれば、常に画面正面から光が当たっているようになります。
light.x = LIGHT3D_X; light.y = LIGHT3D_Y; light.z = LIGHT3D_Z; njCalcVector( NULL, &light, &lwork ); njCnkSetSimpleLight( lwork.x, lwork.y, lworkz );このようにすれば、3D空間(LIGHT3D_X,LIGHT3D_Y,LIGHT3D_Z)からの光源になります。
sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 ); 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 );
njCnkSetSimpleLight |