D3DDDI_LOCKFLAGS 構造体 (d3dumddi.h)
D3DDDI_LOCKFLAGS構造体は、リソースをロックする方法を識別します。
構文
typedef struct _D3DDDI_LOCKFLAGS {
union {
struct {
UINT ReadOnly : 1;
UINT WriteOnly : 1;
UINT NoOverwrite : 1;
UINT Discard : 1;
UINT RangeValid : 1;
UINT AreaValid : 1;
UINT BoxValid : 1;
UINT NotifyOnly : 1;
UINT MightDrawFromLocked : 1;
UINT DoNotWait : 1;
UINT Reserved : 22;
};
UINT Value;
};
} D3DDDI_LOCKFLAGS;
メンバー
ReadOnly
ロックされたリソースの読み取りのみを許可するかどうかを指定する UINT 値。 このメンバーの設定は、32 ビット 値 メンバー (0x00000001) の最初のビットを設定することと同じです。
WriteOnly
ロックされたリソースの書き込みのみが可能かどうかを示す UINT 値。 このメンバーの設定は、32 ビット Value メンバー (0x00000002) の 2 番目のビットを設定することと同じです。
NoOverwrite
ロックされたリソースにデータを追加できるが、リソース内の既存のデータを変更できないかどうかを指定する UINT 値。 このメンバーは、Direct3D 頂点バッファー ロックでのみ使用されます。
このメンバーの設定は、32 ビット Value メンバー (0x00000004) の 3 番目のビットを設定することと同じです。
Discard
ロックされたリソース全体を変更するかどうかを指定する UINT 値。 したがって、既存の内容を破棄できるため、事前処理は必要ありません。
このメンバーの設定は、32 ビット Value メンバー (0x00000008) の 4 番目のビットを設定することと同じです。
RangeValid
ロックされたリソースが線形であるかどうかを示す UINT 値。
このメンバーの設定は、32 ビット Value メンバー (0x00000010) の 5 番目のビットを設定することと同じです。
AreaValid
ロックされたリソースがサーフェスであるかどうかを示す UINT 値。
このメンバーの設定は、32 ビット Value メンバー (0x00000020) の 6 番目のビットを設定することと同じです。
BoxValid
ロックされたリソースがボリュームであるかどうかを示す UINT 値。
このメンバーの設定は、32 ビット Value メンバー (0x00000040) の 7 番目のビットを設定することと同じです。
NotifyOnly
ロック呼び出しが通知専用かどうかを示す UINT 値。
このメンバーの設定は、32 ビット Value メンバー (0x00000080) の 8 番目のビットを設定することと同じです。
MightDrawFromLocked
Direct3D ランタイムによって頂点バッファーがロックされている場合でも、ドライバーが頂点バッファーからの描画を要求される可能性があるかどうかを指定する UINT 値。 MightDrawFromLocked では、Lock の呼び出しの後に、ドライバーが DrawIndexedPrimitive、DrawIndexedPrimitive2、DrawPrimitive2、DrawPrimitive2 関数の呼び出しを受け取る保証はありません。 MightDrawFromLocked は、作成時にD3DDDIARG_CREATERESOURCE構造体の Flags メンバーに設定された MightDrawFromLocked ビット フィールド フラグを使用して作成された頂点バッファーにのみ設定されます。
このメンバーの設定は、32 ビット Value メンバー (0x00000100) の 9 番目のビットを設定することと同じです。
DoNotWait
ユーザー モード ディスプレイ ドライバーがリソースがアイドル状態になるまで待機するかどうかを指定する UINT 値。 DoNotWait の設定は、ユーザー モードディスプレイ ドライバーがリソースがアイドル状態になるまで待機しないことを示します。
このメンバーの設定は、32 ビット Value メンバー (0x00000200) の 10 ビットを設定することと同じです。
Reserved
このメンバーは予約済みであり、0 に設定する必要があります。 このメンバーを 0 に設定することは、32 ビット Value メンバーの残りの 22 ビット (0xFFFFFC00) を ゼロに設定することと同じです。
Value
リソースをロックする方法を識別する 1 つの 32 ビット値を保持できる、D3DDDI_LOCKFLAGSに含まれる共用体内のメンバー。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
Header | d3dumddi.h (D3dumddi.h を含む) |