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_NTSCIN_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

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

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

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