次の方法で共有


PFND3DWDDM1_3DDI_GETMIPPACKING コールバック関数 (d3d10umddi.h)

特定のタイル化されたリソースについて、パックされている mips の数と、パックされたすべての mips を格納するために必要なタイルの数を返します。

構文

PFND3DWDDM1_3DDI_GETMIPPACKING Pfnd3dwddm13DdiGetmippacking;

void Pfnd3dwddm13DdiGetmippacking(
  D3D10DDI_HDEVICE hDevice,
  D3D10DDI_HRESOURCE hTiledResource,
  UINT *pNumPackedMips,
  UINT *pNumTilesForPackedMips
)
{...}

パラメーター

hDevice

ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。

hTiledResource

タイル化されたリソースへのハンドル。

pNumPackedMips

標準のタイル図形を使用しないミップを含む、特定の配列スライスに対してパックされるミップの数を受け取る変数へのポインター。

パッキングがない場合は、0 の値を返す必要があります。

pNumTilesForPackedMips

特定の配列スライスについて、パックされたミップが収まるタイルの数を受け取る変数へのポインター。

*pNumPackedMips が 0 を返す場合、このパラメーターは無視されます。

戻り値

何一つ

備考

ドライバーは、pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。 ドライバーは、入力パラメーターが存在しない場合、または NULL 場合に E_INVALIDARG を設定できます。

パックされたミップには、複数の小さなミップがタイルを共有する場合や、特定のデバイスで標準のタイル図形を使用できないミップが含まれます。 リソース全体がパックされていると見なされる可能性があります。

アプリケーションは、パックされたミップのタイルの図形やレイアウトを伝えるのではなく、いずれかのミップマップにアクセスする場合は、パックされたタイルのすべてまたはまったくマップする必要はありません。 それ以外の場合、アクセスされる個々のピクセルの観察されたマッピングは未定義であり、独立したハードウェア ベンダー (IHV) に固有です。

すべてのディメンションに少なくとも 1 つの標準の形のタイルを完全に埋めるピクセルディメンションを持つミップマップは、パックされたミップのセットの一部とは見なされません。 それ以外の場合、ランタイムは無効なドライバー上のデバイスを削除します。
デバイスがパックされたタイルに有効に集約できるディメンションの 1 つの例 (IHV が独自のカスタム タイルの内訳を使用できることを意味します) は、タイル幅が 1 つ以上高いタイルより小さいミップです。 ただし、デバイスでは、この場合の標準的なタイルの内訳を使用するのが理想的です (そのため、アプリケーションは標準の方法でタイルを管理できます)。 デバイスでカスタム タイリングを使用する必要がある場合、アプリケーションはタイルの内訳 (パッキング全体に含まれるタイルの数のみ) は伝えられず、自由を失います。

必要条件

要件 価値
サポートされる最小クライアント Windows 8.1、WDDM 1.3
サポートされる最小サーバー Windows Server 2012 R2
ターゲット プラットフォーム デスクトップ
ヘッダー d3d10umddi.h (D3d10umddi.h を含む)

関連項目

pfnSetErrorCb