##### Kamui2 Library - 頂点データ登録関数

# kmSetUserClipping

ユーザークリッピング領域の設定

### 書式

> `KMSTATUS kmSetUserClipping( pVertexBuffDesc, nPrevUserClipMode, nListType, pRect )
> PKMVERTEXBUFFDESC pVertexBuffDesc
> KMUSERCLIPMODE nPrevUserClipMode
> KMLISTTYPE nListType
> PKMRECT pRect
> `

### 引数

> pVertexBuffDesc | (入力)KMVERTEXBUFFDESCへのポインタ
> nPrevUserClipMode | (入力)切り替える前のUserClipMode
> nListType | (入力)UserClipping領域を設定するListType
> pRect | (入力)KMRECTへのポインタ

### 戻り値

> KMSTATUS_SUCCESS | 成功

### 解説

> ユーザークリッピング領域を設定します。

> KMSTRIPCONTEXT構造体のStripControl.nUserClipModeメンバおよび、 KMVERTEXCONTEXT構造体の UserClipModeメンバに、 KM_USERCLIP_INSIDEまたはKM_USERCLIP_OUTSIDEを指定したポリゴンに 対しては、ここで指定したユーザークリッピング領域が有効となります。 なお、この領域はListType単位で有効になります。

> 引数nPrevUserClipModeには、以下の切り替える前のUserClipModeを設定します。

> - KM_USERCLIP_DISABLE
> - KM_USERCLIP_INSIDE
> - KM_USERCLIP_OUTSIDE

> 各パスの先頭で指定する場合には、KM_USERCLIP_DISABLEを設定してください。 引数nListTypeには、以下のUserClipping領域を設定するListTypeを設定します。
> - KM_OPAQUE_POLYGON
> - KM_OPAQUE_MODIFIER
> - KM_TRANS_POLYGON
> - KM_TRANS_MODIFIER
> - KM_PUNCHTHROUGH_POLYGON

> 引数pRectには、 KMRECTへのポインタを指定します。 KMRECTにユーザークリップ領域の左上、右下座標を設定します。 ここで指定する値はタイル単位です(1 = 32pixel)。
> - pRect->nXmin (下位6bitのみ有効)
> - pRect->nYmin (下位4bitのみ有効)
> - pRect->nXmax (下位6bitのみ有効)
> - pRect->nYmax (下位4bitのみ有効)

### 備考

> 頂点ストリップの登録の途中でストリップの一部だけをクリップすることはできません。 具体的には、kmStartVertexStrip()関数で開始した頂点ストリップの登録をkmSetVertex()関数で KM_VERTEXPARAM_ENDOFSTRIPを登録するまでの間に、kmSetUserClipping()関数を発行してはいけません。

### 参照

> kmSetVertex() | バッファへの頂点データの登録
> kmStartVertexStrip() | 頂点データストリップの開始

kmSetUserClipping

COPYRIGHT © NEC Corporation / © SEGA ENTERPRISES, LTD., 1998-2000