Microsoft DirectX 8.0 (C++)

D3DRECTPATCH_INFO

矩形の高次パッチを記述する。

typedef struct _D3DRECTPATCH_INFO {
    UINT                StartVertexOffsetWidth;
    UINT                StartVertexOffsetHeight;
    UINT                Width;
    UINT                Height;
    UINT                Stride;
    D3DBASISTYPE        Basis;
    D3DORDERTYPE        Order;
} D3DRECTPATCH_INFO;

メンバ

StartVertexOffsetWidth
頂点の数で表した、開始頂点オフセットの幅。
StartVertexOffsetHeight
頂点の数で表した、開始頂点オフセットの高さ。
Width
頂点の数で表した、各頂点の幅。
Height
頂点の数で表した、各頂点の高さ。
Stride
頂点の数で表した、セグメント間のストライド。
Basis
矩形の高次パッチの基本タイプを定義する D3DBASISTYPE 列挙型のメンバ。
Order
高次パッチのオーダー タイプを定義する D3DORDERTYPE 列挙型のメンバ。

注意

個々の矩形パッチのストリーム (非モザイク) をレンダリングするには、ジオメトリを細く長い (1 × N) 矩形パッチとして解釈しなければならない。このようなストリップ (立方体ベジェ) の D3DRECTPATCH_INFO 構造体は、次のように設定される。

D3DRECTPATCH_INFO RectInfo;

RectInfo.Width = 4;
RectInfo.Height= 4;
RectInfo.Stride= 4;
RectInfo.Basis =  D3DBASIS_BEZIER;
RectInfo.Order =  D3DORDER_CUBIC;
RectInfo.StartVertexOffsetWidth = 0;
RectInfo.StartVertexOffsetHeight = 4*i;  // 変数 i はレンダリングするパッチのインデックスである。

動作環境

  ヘッダー : D3d8types.h で宣言。

参照

IDirect3DDevice8::DrawRectPatch