##### 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;		// テクスチャメモリのサイズを４で割ったもの
>     													// ワークの計算と確保
>     	gVbinfo.nVertexBufferSize     = njCalcVertexBufferSize( &gVbinfo );
>     	gVbinfo.pVertexBuffer         = syMalloc( gVbinfo.nVertexBufferSize );
>     	njInitVertexBufferEx( &gVbinfo );				// 初期化を実行

### 参照

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

njCalcVertexBufferSize

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000