D3D12_PACKED_MIP_INFO-Struktur (d3d12.h)

Beschreibt die Kachelstruktur einer kachelnden Ressource mit mipmaps.

Syntax

typedef struct D3D12_PACKED_MIP_INFO {
  UINT8 NumStandardMips;
  UINT8 NumPackedMips;
  UINT  NumTilesForPackedMips;
  UINT  StartTileIndexInOverallResource;
} D3D12_PACKED_MIP_INFO;

Member

NumStandardMips

Die Anzahl der Standardmipmaps in der kachelten Ressource.

NumPackedMips

Die Anzahl der gepackten Mipmaps in der kachelten Ressource.

Diese Zahl beginnt mit der am wenigsten detaillierten Mipmap (entweder gemeinsame Kacheln oder nicht standardmäßiges Kachellayout). Diese Zahl ist 0, wenn keine solche Verpackung in der Ressource vorhanden ist. Bei Arrayoberflächen ist dieser Wert die Anzahl der Mipmaps, die für einen bestimmten Arrayslice gepackt werden, wobei jeder Arrayslice dieselbe Verpackung wiederholt.

Auf Tier_2 Hardware für kachelnde Ressourcen dürfen Mipmaps, die mindestens eine standardförmige Kachel in allen Dimensionen füllen, nicht in den Satz der gepackten Mipmaps eingeschlossen werden. Auf Tier_1 Hardware dürfen Mipmaps, die ein ganzzahliges Vielfaches einer standardförmigen Kachel in allen Dimensionen sind, nicht in den Satz der gepackten Mipmaps eingeschlossen werden. Mipmaps mit mindestens einer Dimension kleiner als die Standardkachelform können gepackt werden oder nicht. Wenn eine bestimmte mipmap gepackt werden muss, werden alle groberen Mipmaps für einen bestimmten Arrayslice ebenfalls als gepackt betrachtet.

NumTilesForPackedMips

Die Anzahl der Kacheln für die gepackten Mipmaps in der kachelten Ressource.

Wenn keine Verpackung vorhanden ist, ist dieser Wert bedeutungslos und auf 0 festgelegt. Andernfalls wird auf die Anzahl der Kacheln festgelegt, die erforderlich sind, um den Satz von gepackten Mipmaps darzustellen. Das Pixellayout innerhalb der gepackten Mipmaps ist hardwarespezifisch. Wenn Apps nur partielle Zuordnungen für die Kacheln in gepackten Mipmaps definieren, ist das Lese- und Schreibverhalten herstellerspezifisch und nicht definiert. Bei Arrays ist dieser Wert nur die Anzahl der gepackten Mipmaps innerhalb der Unterressourcen für jeden Arrayslices.

StartTileIndexInOverallResource

Der Offset der ersten gepackten Kachel für die Ressource im Gesamtbereich der Kacheln. Wenn NumPackedMips 0 ist, ist dieser Wert bedeutungslos und ist 0. Andernfalls ist dies der Offset der ersten gepackten Kachel für die Ressource im Gesamtbereich der Kacheln für die Ressource. Der Wert 0 für StartTileIndexInOverallResource bedeutet, dass die gesamte Ressource gepackt ist. Bei Arrayoberflächen ist dies der Offset für die Kacheln, die die gepackten Mipmaps für den ersten Arrayslice enthalten. Gepackte Mipmaps für jeden Array-Slice in arrayierten Oberflächen befinden sich in diesem Offset über den Anfang der Kacheln für jeden Arrayslice hinaus.

Hinweis Die Anzahl der gepackten oder nicht gepackten Kacheln für einen bestimmten Arrayslice ist einfach die Gesamtanzahl der Kacheln für die Ressource dividiert durch die Arraygröße der Ressource. Daher ist es einfach, den Bereich der Kacheln für einen bestimmten Array-Slice zu finden, aus dem StartTileIndexInOverallResource identifiziert, welche davon gepackt sind.
 

Hinweise

Diese Struktur wird von der GetResourceTiling-Methode verwendet.

Anforderungen

   
Kopfzeile d3d12.h

Weitere Informationen

CD3DX12_PACKED_MIP_INFO

Kernstrukturen