njCnkSimpleMultiDrawObject
CHUNK オブジェクトの描画

書 式

#include <Ninja.h>
void	njCnkSimpleMultiDrawObject( object )
NJS_CNK_OBJECT	*objectl

引 数

NJS_CNK_OBJECT *object
チャンクオブジェクト構造体へのポインタ

返 値

なし

エラー

なし

機 能

4光源(専用)付きチャンクオブジェクト関数です。
チャンクオブジェクトをカレントマトリクスで座標変換して描画します。
njCnkEasyMultiDrawObject()と同様の機能ですが、環境マッピングに対応しています。
なお、他のモデル関数と違い、ライトの設定は専用の関数を使用します。

njCnkSetSimpleMultiLight()
njCnkSetSimpleMultiLightSwitch()
njCnkSetSimpleMultiAmbient()
njCnkSetSimpleMultiLightColor()
njCnkSetSimpleMultiLightVector()
njCnkSetSimpleMultiLightPoint()
njCnkSetSimpleMultiLightRange()
njCnkSetSimpleMultiLightMatrices()


用 例

sbInitSystem( NJD_RESOLUTION_640x240_NTSCNI, NJD_FRAMEBUFFER_MODE_RGB565, 1 );
njInitVertexBuffer( 500000, 0, 10000, 0, 0 );
njInitMatrix( matrix, 128, 0);
njInit3D( vbuf, 4096 );
njInitView( &view );
njSetView( &view );

njCnkSetSimpleMultiLight(4);
njCnkSetSimpleMultiLightVector(0.f, 0.f, -1.f);
njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_2, 0.f, 0.f, -12.f);
njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_3, 0.f, 0.f, -12.f);
njCnkSetSimpleMultiLightPoint(NJD_CNK_SIMPLE_MULTILIGHT_4, 0.f, 0.f, -12.f);
njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_2, 6.f, 40.f);
njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_3, 6.f, 40.f);
njCnkSetSimpleMultiLightRange(NJD_CNK_SIMPLE_MULTILIGHT_4, 6.f, 40.f);
njCnkSetSimpleMultiAmbient(0.2f, 0.2f, 0.2f);
njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_1, 0.5f, 0.4f, 0.7f);
njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_2, 1.5f, 0.0f, 0.0f);
njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_3, 0.0f, 1.5f, 0.0f);
njCnkSetSimpleMultiLightColor(NJD_CNK_SIMPLE_MULTILIGHT_4, 0.0f, 0.0f, 1.5f);
njCnkSetSimpleMultiLightSwitch(NJD_CNK_SIMPLE_MULTILIGHT_ALL, 1);

while(1) {
  njClearMatrix();
  njTranslate( NULL, 0.f, 0.f, -10.f );
  njRotateXYZ( NULL, xx,yy,zz );
  njCnkSimpleMultiDrawObject( Object );
  xx += 257;
  yy += 179;
  zz += 193;
  njWaitVSync();
}

備 考

サポートしているチャンク形式は、次のとおりです。

頂点チャンク
NJD_CV_VN

ストリップチャンク
NJD_CS
NJD_CS_UVH
NJD_CS_UVN


関 連

njCnkSetSimpleMultiLight
njCnkSetSimpleMultiLightSwitch
njCnkSetSimpleMultiAmbient
njCnkSetSimpleMultiLightColor
njCnkSetSimpleMultiLightVector
njCnkSetSimpleMultiLightPoint
njCnkSetSimpleMultiLightRange
njCnkSetSimpleMultiLightMatrices
njCnkSimpleMultiDrawModel

njCnkSimpleMultiDrawObject

Copyright SEGA ENTERPRISES, LTD., 1998