##### Ninja Library - 描画関数

# njDrawTexture3DEx

3Dテクスチャポリゴンの描画

### 書式

> `void njDrawTexture3DEx( p, count, trans )
> NJS_TEXTURE_VTX *p
> Int count
> Int trans
> `

### 引数

> p | 描画するポリゴンの頂点座標リスト
> count | 描画するポリゴンの頂点数
> trans | 半透明フラグ

### 戻り値

> なし

### 解説

> 3Dテクスチャポリゴンを描画します。

> 頂点データはストリップ形式で設定し、引数countには頂点数を指定します。

> njClip3D関数で設定したニアクリップ、ファークリップ値は反映されます。 ファークリップでは設定した頂点が1点でもクリップの対象になると描画を行いません。

> 半透明を使用する場合は引数transをTRUEに、半透明を使用しない場合はFALSEに設定します。

> njDrawPolygon3D関数に比べ、多くのアトリビュート設定を持たない分高速に描画できます。

### 用例

>     /*
>     四角形を描画します。
>     頂点の順は次のようになります。
>     1  3
>     2  4
>     */
>     NJS_TEXTURE_VTX  poly[4];

>     poly[0].x = 100.f;
>     poly[0].y = 100.f;
>     poly[0].z = 0.5f;
>     poly[0].u = 0.f;
>     poly[0].v = 0.f;
>     poly[0].col = 0xFFFFFFFF;

>     poly[1].x = 100.f;
>     poly[1].y = 300.f;
>     poly[1].z = 0.5.f;
>     poly[1].u = 0.f;
>     poly[1].v = 1.f;
>     poly[1].col = 0xFFFFFFFF;

>     poly[2].x = 300.f;
>     poly[2].y = 100.f;
>     poly[2].z = 0.5f;
>     poly[2].u = 1.f;
>     poly[2].v = 0.f;
>     poly[2].col = 0xFFFFFFFF;

>     poly[3].x = 300.f;
>     poly[3].y = 300.f;
>     poly[3].z = 0.5f;
>     poly[3].u = 1.f;
>     poly[3].v = 1.f;
>     poly[3].col = 0xFFFFFFFF;

>     njSetTexture( &texlist );
>     njSetTextureNum(0);
>     njDrawTexture3DEx( poly, 4, FALSE );

### 備考

> 半透明・不透明など同一のポリゴンを描画する場合は、以下のの関数を用いると更に高速な描画が可能です。

> njDrawTexture3DExStart
> njDrawTexture3DExSetData
> njDrawTexture3DExEnd

> 詳しくはそれぞれ関数の説明を参照してください。

### 参照

> njDrawPolygon3DEx() | 3Dポリゴンの描画
> njDrawPolygon3DExStart() | 3Dポリゴン高速描画の開始宣言
> njDrawPolygon3DExSetData() | 3Dポリゴン高速描画のデータ設定
> njDrawPolygon3DExEnd() | 3Dポリゴン高速描画の開始宣言
> njDrawTexture3DExStart() | 3Dテクスチャポリゴン高速描画の開始宣言
> njDrawTexture3DExSetData() | 3Dテクスチャポリゴン高速描画のデータ設定
> njDrawTexture3DExEnd() | 3Dテクスチャポリゴン高速描画の終了の宣言

njDrawTexture3DEx

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000