D3D11_TEXTURE2D_DESC1-Struktur (d3d11_3.h)
Beschreibt eine 2D-Textur.
Syntax
typedef struct D3D11_TEXTURE2D_DESC1 {
UINT Width;
UINT Height;
UINT MipLevels;
UINT ArraySize;
DXGI_FORMAT Format;
DXGI_SAMPLE_DESC SampleDesc;
D3D11_USAGE Usage;
UINT BindFlags;
UINT CPUAccessFlags;
UINT MiscFlags;
D3D11_TEXTURE_LAYOUT TextureLayout;
} D3D11_TEXTURE2D_DESC1;
Member
Width
Texturbreite (in Texel). Der Bereich reicht von 1 bis D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Bei einer Texturwürfelkarte reicht der Bereich von 1 bis D3D11_REQ_TEXTURECUBE_DIMENSION (16384). Der Bereich ist jedoch tatsächlich durch die Featureebene eingeschränkt, auf der Sie das Renderinggerät erstellen. Weitere Informationen zu Einschränkungen finden Sie unter Hinweise.
Height
Texturhöhe (in Texel). Der Bereich reicht von 1 bis D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Bei einer Texturwürfelkarte reicht der Bereich von 1 bis D3D11_REQ_TEXTURECUBE_DIMENSION (16384). Der Bereich ist jedoch tatsächlich durch die Featureebene eingeschränkt, auf der Sie das Renderinggerät erstellen. Weitere Informationen zu Einschränkungen finden Sie unter Hinweise.
MipLevels
Die maximale Anzahl von Mipmap-Ebenen in der Textur. Weitere Informationen finden Sie in den Hinweisen in D3D11_TEX1D_SRV. Verwenden Sie 1 für eine Mehrfachtextur. oder 0, um einen vollständigen Satz von Untertexturen zu generieren.
ArraySize
Anzahl der Texturen im Texturarray. Der Bereich reicht von 1 bis D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048). Bei einer Texturwürfelzuordnung ist dieser Wert ein Vielfaches von 6 (d. h. das Sechsfache des Werts im NumCubes-Element von D3D11_TEXCUBE_ARRAY_SRV), und der Bereich liegt zwischen 6 und 2046. Der Bereich wird tatsächlich durch die Featureebene eingeschränkt, auf der Sie das Renderinggerät erstellen. Weitere Informationen zu Einschränkungen finden Sie unter Hinweise.
Format
Texturformat (siehe DXGI_FORMAT).
SampleDesc
Struktur, die Multisamplingparameter für die Textur angibt. Weitere Informationen finden Sie unter DXGI_SAMPLE_DESC.
Usage
Wert, der angibt, wie die Textur gelesen und in diese geschrieben werden soll. Der gebräuchlichste Wert ist D3D11_USAGE_DEFAULT; Alle möglichen Werte finden Sie unter D3D11_USAGE .
BindFlags
Flags (siehe D3D11_BIND_FLAG) für die Bindung an Pipelinephasen. Die Flags können durch ein bitweises OR kombiniert werden.
CPUAccessFlags
Flags (siehe D3D11_CPU_ACCESS_FLAG), um die zulässigen CPU-Zugriffstypen anzugeben. Verwenden Sie 0, wenn kein CPU-Zugriff erforderlich ist. Diese Flags können mit einem bitweisen OR kombiniert werden.
MiscFlags
Flags (siehe D3D11_RESOURCE_MISC_FLAG), die andere, weniger gängige Ressourcenoptionen identifizieren. Verwenden Sie 0, wenn keines dieser Flags zutrifft. Diese Flags können mithilfe eines bitweisen OR kombiniert werden. Legen Sie für eine Texturwürfelzuordnung das flag D3D11_RESOURCE_MISC_TEXTURECUBE fest. Cubezuordnungsarrays (d. h. ArraySize> 6) erfordern Featureebene D3D_FEATURE_LEVEL_10_1 oder höher.
TextureLayout
Ein D3D11_TEXTURE_LAYOUT typisierter Wert, der das Layout der Textur angibt.
Der Parameter TextureLayout wählt sowohl das tatsächliche Layout der Textur im Arbeitsspeicher als auch das Layout aus, das für die Anwendung sichtbar ist, während die Textur zugeordnet wird. Diese Flags werden möglicherweise nicht angefordert, ohne dass der CPU-Zugriff ebenfalls angefordert wird.
Es ist unzulässig, CPU-Zugriffsflags für Standardtexturen festzulegen, ohne textureLayout auf einen anderen Wert als D3D11_TEXTURE_LAYOUT_UNDEFINED festzulegen.
D3D11_TEXTURE_LAYOUT_ROW_MAJOR dürfen nur verwendet werden, um Nicht-Multisampled-Texturen mit einer einzelnen Unterressource zu erstellen (planare YUV-Texturen werden unterstützt). Diese Texturen können nur als Quelle und Ziel von Kopiervorgängen verwendet werden, und BindFlags muss null sein.
D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE dürfen nur verwendet werden, um Nicht-Multisampled-Schablonentexturen ohne Tiefentiefe zu erstellen.
Hinweise
Diese Struktur wird in einem Aufruf von ID3D11Device3::CreateTexture2D1 verwendet.
Zusätzlich zu dieser Struktur können Sie auch die CD3D11_TEXTURE2D_DESC1 abgeleitete Struktur verwenden, die in D3D11_3.h definiert ist und sich wie eine geerbte Klasse verhält, um eine Texturbeschreibung zu erstellen.
Das Gerät schränkt einige Größeneinschränkungen ein (muss ein Vielfaches einer Mindestgröße sein) für eine ressource im Unterstempel, eine blockkomprimierte Ressource oder eine Ressource im Bitformat.
Der Texturgrößenbereich wird durch die Featureebene bestimmt, auf der Sie das Gerät erstellen, und nicht durch die Version der Microsoft Direct3D-Schnittstelle. Wenn Sie beispielsweise Microsoft Direct3D 10-Hardware auf Featureebene 10 (D3D_FEATURE_LEVEL_10_0) verwenden und D3D11ErstellenDevice aufrufen, um eine ID3D11Geräte zu erstellen, müssen Sie die maximale Texturgröße auf D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) beschränken, wenn Sie Ihre 2D-Textur erstellen.
Anforderungen
Kopfzeile | d3d11_3.h |