Ninja Library - システム関数

njCalcVertexBufferSize

njInitVertexBufferExに渡すワークサイズを計算します。

書式

Uint32 njCalcVertexBufferSize( pVBInfo )
NJS_VERTEXBUFFER_INFO *pVBInfo

引数

pVBInfo システム情報を格納した構造体へのポインタ

戻り値

必要なワークサイズ(バイト数)

解説

njInitVertexBufferExに渡すワークの必要なサイズを求めます。 構造体へのパラメータの設定の仕方はnjInitVertexBufferExを参照してください。


用例

	NJS_VERTEXBUFFER_INFO gVbinfo;
	
	gVbinfo.bNoWaitVsync          = FALSE;			// レンダリングがVに同期するかどうか
	gVbinfo.nNumOfMaxPass         = 1;				// 使用するパス数
	gVbinfo.sPassInfo[0].bPreSort = FALSE;			// そのパスがプリソートかどうか
	gVbinfo.sPassInfo[0].nSize[0] = -1;				// そのパスの使用するOPAQUE         用バッファ数
	gVbinfo.sPassInfo[0].nSize[1] = 0;				// そのパスの使用するOPAQUE MODIFIER用バッファ数
	gVbinfo.sPassInfo[0].nSize[2] = 100000;			// そのパスの使用するTRANS          用バッファ数
	gVbinfo.sPassInfo[0].nSize[3] = 0;				// そのパスの使用するTRANS MODIFIER 用バッファ数
	gVbinfo.sPassInfo[0].nSize[4] = 0;				// そのパスの使用するPUNCH THROUGH  用バッファ数
	gVbinfo.nNumOfTextures        = 100;			// 使用するテクスチャの枚数
	gVbinfo.nNumOfSmallVQ         = 0;				// 使用するSMALLVQテクスチャの枚数
	gVbinfo.nTextureMemorySize    = 0x400000/4;		// テクスチャメモリのサイズを4で割ったもの
													// ワークの計算と確保
	gVbinfo.nVertexBufferSize     = njCalcVertexBufferSize( &gVbinfo );
	gVbinfo.pVertexBuffer         = syMalloc( gVbinfo.nVertexBufferSize );
	njInitVertexBufferEx( &gVbinfo );				// 初期化を実行


参照

njInitVertexBufferEx() システムの動作定義と初期化

njCalcVertexBufferSize
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000