次の方法で共有


D3DUSAGE

リソースの使用方法を識別する使用オプション。

次の表は、使用可能な使用オプションをまとめたものです。

定数 説明
D3DUSAGE_AUTOGENMIPMAP
リソースによってミップマップが自動的に生成されます。 「ミップマップの自動生成 (Direct3D 9)を参照してください。 ボリューム テクスチャと深度ステンシル サーフェス/テクスチャでは、ミップマップの自動生成はサポートされていません。 この使用は、システム メモリ (D3DPOOL_SYSTEMMEM) 内のリソースに対しては無効です。
D3DUSAGE_DEPTHSTENCIL
リソースは深度ステンシル バッファーになります。 D3DUSAGE_DEPTHSTENCIL は、 D3DPOOL_DEFAULTでのみ使用できます。
D3DUSAGE_DMAP
リソースはディスプレイスメント マップになります。
D3DUSAGE_DONOTCLIP
頂点バッファーのコンテンツにクリッピングが必要ないことを示す値に設定します。 このフラグが設定されているバッファーを使用してレンダリングする場合、 D3DRS_CLIPPING のレンダリング状態を false に設定する必要があります。
D3DUSAGE_DYNAMIC
頂点バッファーで動的メモリの使用が必要であることを示す値に設定します。 これは、バッファーを配置する場所を決定できるため、ドライバーに役立ちます。 一般に、静的頂点バッファーはビデオ メモリに配置され、動的頂点バッファーは AGP メモリに配置されます。 個別の静的な使用は行われません。 D3DUSAGE_DYNAMICを指定しない場合、頂点バッファーは静的になります。 D3DUSAGE_DYNAMIC は、 D3DLOCK_DISCARDとD3DLOCK_NOOVERWRITE ロック フラグによって厳密 適用されます。 その結果、 D3DLOCK_DISCARDD3DLOCK_NOOVERWRITE は、 D3DUSAGE_DYNAMICで作成された頂点バッファーでのみ有効になります。 静的頂点バッファーでは有効なフラグではありません。 詳細については、「 リソースの管理 (Direct3D 9)」を参照してください。
動的頂点バッファーの使用の詳細については、「 パフォーマンスの最適化 (Direct3D 9)」を参照してください。
D3DUSAGE_DYNAMICD3DPOOL_MANAGED は互換性がありません。一緒に使用しないでください。 D3DPOOLを参照してください。
テクスチャでは 、D3DUSAGE_DYNAMICを指定できます。 ただし、マネージド テクスチャでは D3DUSAGE_DYNAMICを使用できません。 動的テクスチャの詳細については、「ダイナミック テクスチャの 使用」を参照してください。
D3DUSAGE_NONSECURE
セキュリティで保護されたアプリケーションによって作成された共有サーフェイスを、共有ハンドルを持つセキュリティで保護されていないアプリケーションによって開くことを許可します。
Direct3D 9 と Direct3D 9Ex の違い: このフラグは Direct3D 9Ex でのみ使用できます。
D3DUSAGE_NPATCHES
頂点バッファーが N パッチの描画に使用されることを示す値に設定します。
D3DUSAGE_POINTS
頂点またはインデックス バッファーが描画ポイント スプライトに使用されることを示すために設定します。 ポイント スプライトをエミュレートするためにソフトウェア頂点処理が必要な場合、バッファーはシステム メモリに読み込まれます。
D3DUSAGE_RENDERTARGET
リソースはレンダー ターゲットになります。 D3DUSAGE_RENDERTARGET は、 D3DPOOL_DEFAULTでのみ使用できます。
D3DUSAGE_RTPATCHES
頂点バッファーが高次プリミティブの描画に使用されることを示す値に設定します。
D3DUSAGE_SOFTWAREPROCESSING
このフラグを使用すると、頂点処理がソフトウェアで実行されます。 このフラグを使用しない場合、頂点処理はハードウェアで行われます。
D3DUSAGE_SOFTWAREPROCESSING フラグは、そのデバイスに対して混合モードまたはソフトウェア頂点処理 (D3DCREATE_MIXED_VERTEXPROCESSING / D3DCREATE_SOFTWARE_VERTEXPROCESSING) が有効になっている場合に設定できます。 D3DUSAGE_SOFTWAREPROCESSING 、混合モードでソフトウェア頂点処理で使用するバッファーを設定する必要がありますが、混合モード (D3DCREATE_HARDWARE_VERTEXPROCESSING) でハードウェア インデックス処理を使用する場合は、パフォーマンスを最大限に高めるために設定しないでください。 ただし、ハードウェア頂点処理とソフトウェア頂点処理の両方で 1 つのバッファーを使用する場合は、 D3DUSAGE_SOFTWAREPROCESSING の設定が唯一のオプションです。 D3DUSAGE_SOFTWAREPROCESSING は、混在デバイスとソフトウェア デバイスに対して許可されます。
D3DUSAGE_SOFTWAREPROCESSING は、ソフトウェアの頂点処理中に特定のテクスチャ形式を頂点テクスチャとして使用できるかどうかを調べるのに CheckDeviceFormat と共に使用されます。 可能な場合は、テクスチャを D3DPOOL_SCRATCHで作成する必要があります。
D3DUSAGE_TEXTAPI
この使用フラグは、 ComposeRects の呼び出しで使用される頂点バッファーとソース サーフェスに対して指定する必要があります。 この使用フラグを使用して作成されたテクスチャは、テクスチャ フィルタリングには使用できません。 この使用フラグを使用して作成された頂点バッファーは、入力ストリーム ソースとして使用できません。
Direct3D 9 と Direct3D 9Ex の違い: このフラグは Direct3D 9Ex でのみ使用できます。
D3DUSAGE_WRITEONLY
アプリケーションが頂点バッファーにのみ書き込むようシステムに通知します。 このフラグを使用すると、ドライバーは、効率的な書き込み操作とレンダリングのための最適なメモリの場所を選択できます。 この機能を使用して作成された頂点バッファーからの読み取りは失敗します。 D3DUSAGE_WRITEONLYを指定しないD3DPOOL_DEFAULTで作成されたバッファーでは、パフォーマンスが著しく低下する可能性があります。 D3DUSAGE_WRITEONLY は、 D3DPOOL_DEFAULT バッファーのパフォーマンスにのみ影響します。
D3DUSAGE_RESTRICTED_CONTENT
このフラグを設定すると、リソースに保護されたコンテンツが含まれている可能性があることを示します。
Direct3D 9 と Direct3D 9Ex の違い: このフラグは Direct3D 9Ex でのみ使用できます。
D3DUSAGE_RESTRICT_SHARED_RESOURCE
このフラグを設定すると、共有リソースへのアクセスを制限する必要があることを示します。
Direct3D 9 と Direct3D 9Ex の違い: このフラグは Direct3D 9Ex でのみ使用できます。
D3DUSAGE_RESTRICT_SHARED_RESOURCE_DRIVER
このフラグを設定すると、ドライバーが共有リソースへのアクセスを制限する必要があることを示します。 呼び出し元は、ドライバーで認証されたチャネルを作成する必要があります。 その後、ドライバーは、その共有リソースを開こうとするプロセスへのアクセスを許可する必要があります。
Direct3D 9 と Direct3D 9Ex の違い: このフラグは Direct3D 9Ex でのみ使用できます。

注釈

使用状況とリソースの組み合わせ

使用状況は、リソースの作成時に指定するか、 CheckDeviceType で指定して既存のリソースの機能をテストします。 次の表は、どのリソースの種類に適用できるかを示しています。

使用方法 頂点バッファーの作成 インデックス バッファーの作成 テクスチャの作成 キューブ テクスチャの作成 ボリューム テクスチャの作成 Surface の作成 デバイスの形式を確認する
D3DUSAGE_AUTOGENMIPMAP そうそう はい
D3DUSAGE_DEPTHSTENCIL そうそう そうそう
D3DUSAGE_DMAP はい はい
D3DUSAGE_DONOTCLIP はい
D3DUSAGE_DYNAMIC はい はい はい はい はい はい はい
D3DUSAGE_NONSECURE はい はい はい はい はい はい はい はい はい
D3DUSAGE_NPATCHES はいはい
D3DUSAGE_POINTS はい
D3DUSAGE_RTPATCHES はい
D3DUSAGE_RENDERTARGET そうそう そうそう
D3DUSAGE_SOFTWAREPROCESSING はい はい はい はい はい はい はい
D3DUSAGE_TEXTAPI はい はい
D3DUSAGE_WRITEONLY はい

 

CheckDeviceFormat を使用して、これらの使用法のハードウェア サポートを確認します。

リソースの作成方法の一覧を次に示します。

D3DXCreatexxx テクスチャリング関数では、リソースの作成にこれらの定数値の一部も使用されます。

プールの種類とその特定の使用方法に関する制限の詳細については、 D3DPOOLを参照してください。

要求事項

要件 価値
ヘッダ
D3d9types.h

こちらも参照ください

Direct3D 定数 する

D3DUSAGE_QUERY

D3DDECLUSAGE

D3DPOOL