Ninjaライブラリ - テクスチャ関数

njRenderTextureNumG

テクスチャ領域へのレンダリング

書式

void njRenderTextureNumG( globalIndex ) 
Uint32 globalIndex 

引数

globalIndex   グローバルインデックス番号

戻り値

なし

解説

グローバルインデックス番号globalIndexのテクスチャにレンダリングします。 レンダリングできるテクスチャはNJD_TEXFMT_RECTANGLEまたはNJD_TEXFMT_STRIDEです。 テクスチャ領域が画面より小さい場合、画面の左上からの座標までの領域をレンダリングします。 NJD_TEXFMT_STRIDEの場合、njSetRenderWidth関数でストライド値を設定する必要があります。 ストライド値は通常、レンダリング領域の横サイズです。

用例

void njUserInit(void)
{
 /*レンダテクスチャを使用する場合、njInitSystemの
   フレームバッファのカラーモードとレンダテクスチャで
   使用するテクスチャのカラーモードを合わせる
 */
 njInitSystem( NJD_RESOLUTION_640x480_NTSCNI,
	NJD_FRAMEBUFFER_MODE_RGB565, 1 );
	:
 /* とりあえずテクスチャのメモリ領域をダミーで確保する */
 buff = syMalloc(512*512*2);
 /* フレームバッファのカラーと合わせる。
    サイズは512x512とする。 */
 njSetTextureInfo(&info,buff,
	NJD_TEXFMT_RECTANGLE|NJD_TEXFMT_RGB_565,512,512);
 njSetTextureName(&texname[0],&info,0,
	NJD_TEXATTR_TYPE_MEMORY|
	NJD_TEXATTR_GLOBALINDEX);
 njInitTexture( tex, 100 );
 njLoadTexture(&texlist);

 /* ダミーで確保した領域はnjLoadTexture後は解放してもよい */
 syFree(buff);
}
Sint32 njUserMain(void)
{
	:

 /* モデルなどを描画する */
 njDrawObject( OBJECT );
	:

 njSetTexture(&texlist);
 /* グローバルインデックス番号0にレンダリングする */
 njRenderTextureNumG(0);
 /* レンダリングしたテクスチャを使用して描画する */
 njDrawTexture( poly, 4, 0,TRUE);
	:
}

備考

テクスチャ領域にレンダリングすると、フレームバッファへの通常のレンダリングと合計2回のレンダリングをかけることになります。 詳しくは、テクスチャドキュメントを参照してください。

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