Ninjaライブラリ - システム関数

njChangeSystem

グラフィックシステムの変更

書式

void njChangeSystem( mode, frame, count ) 
Int mode 
Int frame 
Int count 

引数

mode   画面モード
frame   フレームバッファのカラーモード
count   フレームカウント数

戻り値

なし

解説

システムを変更し、画面解像度を指定したモードにします。 2Dクリップエリアを画面サイズと同じにします。 フレームカウント数は1/60秒を単位とした値で設定します。 たとえばframeに2を設定すると、1/30秒毎にフレームチェンジします。 フレームチェンジは、njWaitVSync関数で行います。

画面モードは以下のとおりです。


NJD_RESOLUTION_VGA
NJD_RESOLUTION_320x240_NTSCNI
NJD_RESOLUTION_320x240_NTSCI
NJD_RESOLUTION_640x240_NTSCNI
NJD_RESOLUTION_640x240_NTSCI
NJD_RESOLUTION_320x480_NTSCNI_FF
NJD_RESOLUTION_320x480_NTSCNI
NJD_RESOLUTION_320x480_NTSCI
NJD_RESOLUTION_640x480_NTSCNI_FF
NJD_RESOLUTION_640x480_NTSCNI
NJD_RESOLUTION_640x480_NTSCI
NJD_RESOLUTION_320x240_PALNI
NJD_RESOLUTION_320x240_PALI
NJD_RESOLUTION_640x240_PALNI
NJD_RESOLUTION_640x240_PALI
NJD_RESOLUTION_320x480_PALNI_FF
NJD_RESOLUTION_320x480_PALNI
NJD_RESOLUTION_320x480_PALI
NJD_RESOLUTION_640x480_PALNI_FF
NJD_RESOLUTION_640x480_PALNI
NJD_RESOLUTION_640x480_PALI
NJD_RESOLUTION_VGA_ANTI
NJD_RESOLUTION_320x240_NTSCNI_ANTI
NJD_RESOLUTION_320x240_NTSCI_ANTI
NJD_RESOLUTION_640x240_NTSCNI_ANTI
NJD_RESOLUTION_640x240_NTSCI_ANTI
NJD_RESOLUTION_320x480_NTSCNI_FF_ANTI
NJD_RESOLUTION_320x480_NTSCNI_ANTI
NJD_RESOLUTION_320x480_NTSCI_ANTI
NJD_RESOLUTION_640x480_NTSCNI_FF_ANTI
NJD_RESOLUTION_640x480_NTSCNI_ANTI
NJD_RESOLUTION_640x480_NTSCI_ANTI
NJD_RESOLUTION_320x240_PALNI_ANTI
NJD_RESOLUTION_320x240_PALI_ANTI
NJD_RESOLUTION_640x240_PALNI_ANTI
NJD_RESOLUTION_640x240_PALI_ANTI
NJD_RESOLUTION_320x480_PALNI_FF_ANTI
NJD_RESOLUTION_320x480_PALNI_ANTI
NJD_RESOLUTION_320x480_PALI_ANTI
NJD_RESOLUTION_640x480_PALNI_FF_ANTI
NJD_RESOLUTION_640x480_PALNI_ANTI
NJD_RESOLUTION_640x480_PALI_ANTI

それぞれの意味は次のようになります。

 表記   意味 
 VGA   VGAモード 
 320x240   画面解像度320x240 
 320x480   画面解像度320x480 
 640x240   画面解像度640x240 
 640x480   画面解像度640x480 
 NTSC/PAL   表示方式 
 I/NI   30Int表示/60Int表示 
 ANTI   アンチエイリアス 
 FF   TypeBフリッカーフリー(※) 

FFの指定がない場合、TypeAフリッカーフリーになります。 詳しくは、ハードウェア概要(dreamcast_hw.pdf)を参照してください。

フレームバッファのカラーモードは以下のとおりです。

 表記   意味 
 NJD_FRAMEBUFFER_MODE_RGB565   赤5bit/緑6bit/青5bit 
 NJD_FRAMEBUFFER_MODE_RGB555   赤5bit/緑5bit/青5bit 
 NJD_FRAMEBUFFER_MODE_ARGB1555   アルファ1bit/赤5bit/緑5bit/青5bit 
 NJD_FRAMEBUFFER_MODE_RGB888   赤8bit/緑8bit/青8bit 
 NJD_FRAMEBUFFER_MODE_ARGB8888   アルファ8bit/赤8bit/緑8bit/青8bit 


用例

いったんフレームバッファの表示を止めてから
グラフィックシステムの設定を変更をする

njStopDisplay();
njReleaseTextureAll();
njChangeSystem(NJD_RESOLUTION_640x480_NTSCI,
	NJD_FRAMEBUFFER_MODE_RGB565, 1);
njInitVertexBuffer( 800000, 0, 300000, 0 ,0 );
njLoadTexture( &texlist );

備考

この関数を実行する前にロードしているテクスチャをすべて解放し、実行後に、njInitVertexBuffer関数を実行して再度テクスチャをロードし直してください。

参照

njInitSystem()
njInitVertexBuffer()
njWaitVSync()

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