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

# njSetVertexBuffer

頂点登録用バッファ領域の指定

### 書式

      void njSetVertexBuffer( *buffer, size )
      Uint32 *buffer
      Sint32 size

### 引数

  *buffer | バーテックスバッファ領域のポインタ
  size | バーテックスバッファ領域のサイズ

### 戻り値

  なし

### 解説

  頂点登録用バッファ領域を指定します。 ここで指定した領域からnjInitVertexBufer関数が頂点登録用バッファ領域を設定します。 この関数を使用する場合、アプリケーションがすべて終了するまでユーザー設定を使用することになります。 また、途中からこの領域を設定することもできません。 モードチェンジにより頂点登録用バッファのサイズが変更される場合は、njIniteVertexBuffer関数の実行前にnjSetVertexBuffer関数を実行してください。

  3Vレーテンシと2Vレーテンシでの取得メモリサイズは以下のようになります。

  3Vの場合 | 取得メモリサイズ＝(op＋om＋tp＋tm＋pt)×4＋352(内部必要領域) バイト
  2Vの場合 | 取得メモリサイズ＝100(マイナスをつけたバッファ)＋(それ以外のバッファ)×4＋352(内部必要領域)

  例：
  3Vの場合
  njInitVertexBuffer( 100000, 0, 100000, 0, 0);
  op＝100000×4バイト＝400000バイト
  tp＝100000×4バイト＝400000バイト
  内部必要領域＝352バイト
  合計800352バイト

  2Vレーテンシで上と同じ設定する場合
  njInitVertexBuffer( −100000, 0, 50000, 0 ,0);
  op＝マイナスは100バイト
  to＝50000×4バイト＝200000バイト(シングルバッファなので半分でよい)
  内部必要領域＝352バイト
  合計200452バイト

### 用例

      通常の場合の初期化順序
      	:
      njInitSystem(NJD_RESOLUTION_VGA,
      	NJD_FRAMEBUFFER_MODE_RGB565, 1);
      	:
      njSetVertexBuffer(buffer,size);
      njInitVertexBuffer( -100000, 0, 50000, 0 ,0);

      モードを変更する場合の初期化順序
      njChangeSystem(NJD_RESOLUTION_640x480_NTSCNI,
      	NJD_FRAMEBUFFER_MODE_RGB565, 1);
      njSetVertexBuffer(buffer,size);
      njInitVertexBuffer( -100000, 0, 50000, 0 ,0);

### 参照

  njInitVertexBuffer()

njSetVertexBuffer

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999