Ninja Library - Light Function

njCnkSetSimpleMultiLightMatrices

Sets the direction and position reflections of the chunk SimpleMulti light

FORMAT

void njCnkSetSimpleMultiLightMatrices( void )

PARAMETER

None

RETURN

None

DESCRIPTION

Reflects the direction and position of the light source set for the njCnkSimpleMultiDrawObject (njCnkSimpleMultiDrawModel).

This function should basically be set after the view-camera is set.

(Example: following njClearMatrix)

All the previous settings of light position and direction will be reflected by this.


EXAMPLE

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 );
/* Set chunk light as 4 */
njCnkSetSimpleMultiLight( 4 );
/* Set direction of chunk light's parallel light source (first light source) */
njCnkSetSimpleMultiLightVector(0.f, 0.f, -1.f);
/* Set chunk light's point light source position */
/* Set second light source (point light source) */
njCnkSetSimpleMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_2, 0.f, 0.f, -12.f);
/* Set third light source (point light source) */
njCnkSetSimpleMultiLightPoint(NJD_CNK_EASY_MULTILIGHT_3, 0.f, 0.f, -12.f);
/* Set chunk light's point light source range (distance) */
njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_2, 6.f, 40.f);
njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_3, 6.f, 40.f);
njCnkSetSimpleMultiLightRange(NJD_CNK_EASY_MULTILIGHT_4, 6.f, 40.f);
/* Set chunk light's ambient color */
njCnkSetSimpleMultiAmbient(0.1f, 0.1f, 0.1f);
/* Set the chunk light's light source color */
njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_1, 0.6f, 0.5f, 0.3f);
njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_2, 1.f, 0.5f, 0.5f);
njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_3, 0.5f, 1.f, 0.5f);
njCnkSetSimpleMultiLightColor(NJD_CNK_EASY_MULTILIGHT_4, 0.5f, 0.5f, 1.f);
	:
njClearMatrix();
/* Set chunk light direction-position reflection */
njCnkSetSimpleMultiLightMatrices();
njTranslate( NULL, 0.f, 0.f, -10.f );
njRotateXYZ( NULL, rx,ry,rz );
njCnkSimpleMultiDrawObject;

REFERENCE

njCnkSimpleMultiDrawModel()
njCnkSimpleMultiDrawObject()
njCnkSetSimpleMultiAmbient()
njCnkSetSimpleMultiLight()
njCnkSetSimpleMultiLightColor()
njCnkSetSimpleMultiLightPoint()
njCnkSetSimpleMultiLightRange()
njCnkSetSimpleMultiLightVector()
njCnkSetSimpleMultiLightSwitch()

njCnkSetSimpleMultiLightMatrices
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999