Freigeben über


D3DPRIMCAPS Struktur (d3dcaps.h)

Veraltet in DirectX 8.0 und höheren Versionen; siehe Hinweise.

Die D3DPRIMCAPS-Struktur definiert die Funktionen für jeden Grundtyp.

Syntax

typedef struct _D3DPrimCaps {
  DWORD dwSize;
  DWORD dwMiscCaps;
  DWORD dwRasterCaps;
  DWORD dwZCmpCaps;
  DWORD dwSrcBlendCaps;
  DWORD dwDestBlendCaps;
  DWORD dwAlphaCmpCaps;
  DWORD dwShadeCaps;
  DWORD dwTextureCaps;
  DWORD dwTextureFilterCaps;
  DWORD dwTextureBlendCaps;
  DWORD dwTextureAddressCaps;
  DWORD dwStippleWidth;
  DWORD dwStippleHeight;
} D3DPRIMCAPS, *LPD3DPRIMCAPS;

Angehörige

dwSize

Gibt die Größe der D3DPRIMCAPS Struktur in Bytes an.

dwMiscCaps

Gibt die allgemeinen Funktionen für diesen Grundtyp an. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Wert Bedeutung
D3DPMISCCAPS_CONFORMANT Das Gerät entspricht dem OpenGL-Standard.
D3DPMISCCAPS_CULLCCW Der Treiber unterstützt das Culling im Uhrzeigersinn durch den D3DRENDERSTATE_CULLMODE Renderzustand. (Dies gilt nur für Dreiecksgrundtypen.) Dies entspricht dem D3DCULL_CCW Enumerator des D3DCULL Aufzählungstyps.
D3DPMISCCAPS_CULLCW Der Treiber unterstützt das dreieckige Culling im Uhrzeigersinn durch den D3DRENDERSTATE_CULLMODE Renderzustand. (Dies gilt nur für Dreiecksgrundtypen.) Dies entspricht dem D3DCULL_CW Enumerator des D3DCULL Aufzählungstyps.
D3DPMISCCAPS_CULLNONE Der Treiber führt keine Dreiecks-Culling aus. Dies entspricht dem D3DCULL_NONE Enumerator des D3DCULL Aufzählungstyps.
D3DPMISCCAPS_LINEPATTERNREP Der Treiber kann werte außer 1 im wRepeatFactor-Element der D3DLINEPATTERN-Struktur verarbeiten. (Dies gilt nur für Linienzeichnungsgrundtypen.)
Anwendungen können die Zeilenmusterwiederholungszahl auf einen Maximalwert von 65535 (16-Bit-Wert) festlegen. Hardware unterstützt jedoch nur maximal 255 (8-Bit-Wert). Daher muss ein Anzeigetreiber eine Anforderung nicht ausführen, die versucht, diese Zahl auf einen Wert von mehr als 255 als ungültige Anforderung festzulegen. Weitere Informationen finden Sie unter Festlegen der Anzahl von Linienmuster-Wiederholungen.
D3DPMISCCAPS_LINEPATTERNREP und D3DPRASTERCAPS_PAT müssen konsistent (sowohl ein als auch beides deaktiviert) festgelegt werden.
D3DPMISCCAPS_MASKPLANES Das Gerät kann eine Bitmaske von Farbebenen ausführen.
D3DPMISCCAPS_MASKZ Das Gerät kann die Änderung des Z-Puffers für Pixelvorgänge aktivieren und deaktivieren.

dwRasterCaps

Enthält Informationen zu Rasterzeichnungsfunktionen. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Wert Bedeutung
D3DPRASTERCAPS_ANISOTROPY Das Gerät unterstützt die anisotrope Filterung. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation D3DTSS_MAXANISOTROPY.
D3DPRASTERCAPS_ANTIALIASEDGES Das Gerät kann Antialiaslinien bilden, die die konvexe Kontur von Objekten bilden. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation D3DRENDERSTATE_EDGEANTIALIAS.
D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT Das Gerät unterstützt Antialiasing, das von der Sortierreihenfolge der Polygone (back-to-front oder front-to-back) abhängig ist. Die Anwendung muss Polygone in der richtigen Reihenfolge zeichnen, damit Antialiasing auftritt. Weitere Informationen finden Sie im D3DANTIALIASMODE aufgezählten Typ in der DirectX SDK-Dokumentation.
D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT Das Gerät unterstützt Antialiasing, das nicht von der Sortierreihenfolge der Polygone abhängig ist. Weitere Informationen finden Sie im D3DANTIALIASMODE aufgezählten Typ in der DirectX SDK-Dokumentation.
D3DPRASTERCAPS_DITHER Das Gerät kann die Farbauflösung durch den D3DRENDERSTATE_DITHERENABLE Renderzustand verbessern.
D3DPRASTERCAPS_FOGRANGE Das Gerät unterstützt bereichsbasierten Nebel, in dem der Abstand eines Objekts vom Viewer anstelle der Tiefe des Objekts (seine Z-Koordinate) zum Berechnen von Nebeleffekten in der Szene verwendet wird. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation D3DRENDERSTATE_RANGEFOGENABLE.
D3DPRASTERCAPS_FOGTABLE Das Gerät berechnet den Nebelwert, indem auf eine Nachschlagetabelle verwiesen wird, die Nebelwerte enthält, die in die Tiefe eines bestimmten Pixels indiziert sind. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation unter D3DRENDERSTATE_FOGCOLOR, D3DRENDERSTATE_FOGDENSITY, D3DRENDERSTATE_FOGENABLE, D3DRENDERSTATE_FOGEND, D3DRENDERSTATE_FOGSTART und D3DRENDERSTATE_FOGTABLEMODE.
D3DPRASTERCAPS_FOGVERTEX Das Gerät berechnet den Nebelwert während des Beleuchtungsvorgangs, platziert den Wert in die Alphakomponente des D3DCOLOR Werts, der für das Glanzelement der D3DTLVERTEX Struktur (definiert in der Direct3D SDK-Dokumentation) angegeben wird, und interpoliert den Nebelwert während der Rasterung. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation unter D3DRENDERSTATE_FOGCOLOR, D3DRENDERSTATE_FOGDENSITY, D3DRENDERSTATE_FOGENABLE, D3DRENDERSTATE_FOGEND, D3DRENDERSTATE_FOGSTART und D3DRENDERSTATE_FOGVERTEXMODE.
D3DPRASTERCAPS_PAT Der Treiber kann gemusterte Zeichnung (Linien oder Füllungen mit D3DRENDERSTATE_LINEPATTERN oder einem der D3DRENDERSTATE_STIPPLEPATTERN Renderzustände) für den abgefragten Grundtyp ausführen.
D3DPRASTERCAPS_PAT und D3DPMISCCAPS_LINEPATTERNREP müssen konsistent festgelegt werden (sowohl ein als auch beides aus).
D3DPRASTERCAPS_ROP2 Das Gerät kann andere Rastervorgänge als R2_COPYPEN unterstützen.
D3DPRASTERCAPS_STIPPLE Das Gerät kann Polygone stippen, um die Transluzität zu simulieren.
D3DPRASTERCAPS_SUBPIXEL Das Gerät führt eine Subpixelplatzierung von Z-, Farb- und Texturdaten durch, anstatt mit der pixelgenauen Koordinate mit der nächstgelegenen Ganzzahl zu arbeiten. Dadurch wird eine Beschnittung aufgrund von Z-Ungenauigkeiten und jittern von Farb- und Texturwerten für Pixel vermieden. Beachten Sie, dass kein entsprechender Zustand vorhanden ist, der aktiviert und deaktiviert werden kann; das Gerät führt entweder eine Subpixelplatzierung aus oder nicht, und dieses Bit ist nur vorhanden, damit der Direct3D-Client besser bestimmen kann, was die Renderingqualität ist.
D3DPRASTERCAPS_SUBPIXELX Das Gerät ist nur entlang der x-Achse subpixelgenau und wird an eine ganzzahlige y-Achsen-Scanlinie geklammert. Informationen zur Genauigkeit von Subpixeln finden Sie in der zuvor erwähnten Definition von D3DPRASTERCAPS_SUBPIXEL.
D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT Die Hardware kann translucency ohne Sortierung durchführen. Dies ist ein Abschuss der A-Puffertechnik für antialiasing.
D3DPRASTERCAPS_WBUFFER Das Gerät unterstützt w-buffering.
D3DPRASTERCAPS_WFOG Das Gerät unterstützt w-basierte Nebel.
D3DPRASTERCAPS_XOR Das Gerät kann XOR-Vorgänge unterstützen. Wenn dieses Flag nicht festgelegt, aber D3DPRASTER_ROP2 festgelegt ist, müssen XOR-Vorgänge weiterhin unterstützt werden.
D3DPRASTERCAPS_ZBIAS Das Gerät unterstützt Z-Bias-Werte, ganzzahlige Werte, die Polygonen zugewiesen sind, damit physische koplanare Polygone getrennt angezeigt werden können. Weitere Informationen finden Sie in der DirectX SDK-Dokumentation D3DRENDERSTATE_ZBIAS.
D3DPRASTERCAPS_ZBUFFERLESSHSR Das Gerät kann das Entfernen ausgeblendeter Oberflächen (Hidden Surface Removal, HSR) durchführen, ohne dass die Anwendung Polygone sortieren muss, und ohne dass die Zuordnung eines Z-Puffers erforderlich ist. Dadurch bleibt mehr Videospeicher für Texturen. Die zum Ausführen von HSR verwendete Methode ist hardwareabhängig und für die Anwendung transparent. Z-buffer-less HSR wird ausgeführt, wenn keine Z-Pufferoberfläche an die Renderzieloberfläche angefügt ist und der Vergleichstest für z-Puffer aktiviert ist (d. h., wenn der dem D3DRENDERSTATE_ZENABLE Renderzustandswert zugeordnete Zustandswert auf TRUE festgelegt ist).
D3DPRASTERCAPS_ZFOG Das Gerät unterstützt z-basierten Nebel.
D3DPRASTERCAPS_ZTEST Das Gerät kann Z-Testvorgänge ausführen. Dadurch wird ein Grundtyp effektiv gerendert und gibt an, ob Z-Pixel gerendert wurden.

dwZCmpCaps

Gibt Z-Puffervergleichsfunktionen an, die der Treiber über den D3DRENDERSTATE_ZFUNC Renderzustand ausführen kann. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Vergleichsfunktion Beschreibung
D3DPCMPCAPS_ALWAYS Bestehen Sie immer den Z-Test.
D3DPCMPCAPS_EQUAL Bestehen Sie den Z-Test, wenn die neue z dem aktuellen Z entspricht.
D3DPCMPCAPS_GREATER Bestehen Sie den Z-Test, wenn die neue z größer als die aktuelle z ist.
D3DPCMPCAPS_GREATEREQUAL Bestehen Sie den Z-Test, wenn die neue z größer oder gleich dem aktuellen Z ist.
D3DPCMPCAPS_LESS Bestehen Sie den Z-Test, wenn die neue z kleiner als die aktuelle z ist.
D3DPCMPCAPS_LESSEQUAL Bestehen Sie den Z-Test, wenn die neue z kleiner oder gleich dem aktuellen Z ist.
D3DPCMPCAPS_NEVER Fehler beim Z-Test.
D3DPCMPCAPS_NOTEQUAL Bestehen Sie den Z-Test, wenn die neue z nicht dem aktuellen Z entspricht.

dwSrcBlendCaps

Gibt die vom Treiber unterstützten Quellmischungsfunktionen über den D3DRENDERSTATE_SRCBLEND Renderzustand an. Bei diesem Element kann es sich um einen oder mehrere der folgenden Werte handeln. (Die RGBA-Werte der Quelle und des Ziels werden mit den Tiefgestellten und d angegeben.)

Wert Bedeutung
D3DPBLENDCAPS_BOTHINVSRCALPHA Quellmischungsfaktor ist (1 - As, 1 - As, 1 - As, 1 - As) und Zielmischungsfaktor ist (As, As, As, As); die Zielmischungsauswahl wird außer Kraft gesetzt.
D3DPBLENDCAPS_BOTHSRCALPHA Der Quellmischungsfaktor ist (As, As, As) und Zielmischungsfaktor (1 - As, 1 - As, 1 - As, 1 - As); die Zielmischungsauswahl wird außer Kraft gesetzt.
D3DPBLENDCAPS_DESTALPHA Blend-Faktor ist (Ad, Ad, Ad, Ad).
D3DPBLENDCAPS_DESTCOLOR Blend-Faktor ist (Rd, Gd, Bd, Ad).
D3DPBLENDCAPS_INVDESTALPHA Blendfaktor ist (1 - Ad, 1 - Ad, 1 - Ad, 1 - Ad, 1 - Ad).
D3DPBLENDCAPS_INVDESTCOLOR Blendfaktor ist (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad).
D3DPBLENDCAPS_INVSRCALPHA Der Blendfaktor ist (1 - As, 1 - As, 1 - As, 1 - As).
D3DPBLENDCAPS_INVSRCCOLOR Blendfaktor ist (1 - Rs, 1 - Gs, 1 - Bs, 1 - As).
D3DPBLENDCAPS_ONE Blendfaktor ist (1, 1, 1, 1).
D3DPBLENDCAPS_SRCALPHA Blendfaktor ist (As, As, As, As).
D3DPBLENDCAPS_SRCALPHASAT Blendfaktor ist (f, f, f, 1); f = min(As, 1 - Ad).
D3DPBLENDCAPS_SRCCOLOR Blendfaktor ist (Rs, Gs, Bs, As).
D3DPBLENDCAPS_ZERO Blendfaktor ist (0, 0, 0, 0).

dwDestBlendCaps

Gibt die vom Treiber unterstützten Zielmischungsfunktionen über den D3DRENDERSTATE_DESTBLEND Renderzustand an. Dieses Element kann die gleichen Funktionen sein, die für das dwSrcBlendCaps Member definiert sind.

dwAlphaCmpCaps

Gibt Alphatestvergleichsfunktionen an, die der Treiber ausführen kann. Dieses Element verwendet die gleichen Vergleichsfunktionen wie für das dwZCmpCaps Member definiert sind. Wenn das dwAlphaCmpCaps Mitglied der D3DPRIMCAPS Struktur 0 ist, unterstützt der Treiber keine Alphatestrenderungszustände D3DRENDERSTATE_ALPHAFUNC, D3DRENDERSTATE_ALPHAREF und D3DRENDERSTATE_ALPHATESTENABLE.

dwShadeCaps

Gibt Schattierungsvorgänge an, die das Gerät ausführen kann. Im Allgemeinen wird davon ausgegangen, dass ein Gerät, wenn ein Gerät einen bestimmten Befehl (z. B. D3DOP_TRIANGLE) überhaupt unterstützt, den D3DSHADE_FLAT Modus unterstützt (wie im D3DSHADEMODE Aufzählungstyp in der DirectX SDK-Dokumentation angegeben). Dieses Kennzeichen gibt an, ob der Treiber auch Gouraud und Phong-Schattierung unterstützen kann und ob Alphafarbkomponenten für jeden der drei Farbgenerierungsmodi unterstützt werden. Wenn Alphakomponenten in einem bestimmten Modus nicht unterstützt werden, ist der Alphawert der farben, die in diesem Modus generiert werden, implizit 255. Dies ist der maximal mögliche Alphawert (d. a. die Alphakomponente ist in voller Intensität).

Die Farb-, Glanzlichter-, Nebel- und Alpha-Interpolanten eines Dreiecks weisen jeweils Funktionskennzeichnungen auf, die eine Anwendung verwenden kann, um herauszufinden, wie sie vom Gerätetreiber implementiert werden. Diese werden durch den Schattenmodus und das Farbmodell geändert, und ob die Alphakomponente einer Farbe gemischt oder gekippt wird.

Bei diesem Element kann es sich um einen oder mehrere Werte handeln, die in der folgenden Tabelle aufgeführt sind. Verwandte Flags werden in dieser Tabelle gruppiert.

Wert Bedeutung
D3DPSHADECAPS_ALPHAFLATBLEND D3DPSHADECAPS_ALPHAFLATSTIPPLED Das Gerät kann eine Alphakomponente für flach gemischte und gestippte Transparenz (D3DRENDERSTATE_STIPPLEDALPHA) bzw. (den D3DSHADE_FLAT Zustand für den D3DSHADEMODE Aufzählungstyp) unterstützen. In diesen Modi wird die Alphafarbkomponente für einen Grundtyp als Teil der Farbe für den ersten Scheitelpunkt des Grundtyps bereitgestellt.
D3DPSHADECAPS_ALPHAGOURAUDBLEND D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED Das Gerät kann eine Alphakomponente für gouraud blended and stippled (D3DRENDERSTATE_STIPPLEDALPHA) transparenz unterstützen, bzw. (der D3DSHADE_GOURAUD Zustand für den D3DSHADEMODE Aufzählungstyp). In diesen Modi wird die Alphafarbkomponente für einen Grundtyp an Scheitelpunkten bereitgestellt und zusammen mit den anderen Farbkomponenten über ein Gesicht interpoliert.
D3DPSHADECAPS_ALPHAPHONGBLEND D3DPSHADECAPS_ALPHAPHONGSTIPPLED Das Gerät kann eine Alphakomponente für Phong-blended und stippled (D3DRENDERSTATE_STIPPLEDALPHA) Transparenz bzw. den D3DSHADE_PHONG Zustand für den D3DSHADEMODE Aufzählungstyp unterstützen. In diesen Modi werden Vertexparameter pro Pixel neu ausgewertet, wobei Beleuchtungseffekte für die Rot-, Grün- und Blaufarbenkomponenten angewendet werden.
D3DPSHADECAPS_COLORFLATMONO D3DPSHADECAPS_COLORFLATRGB Das Gerät kann eine farbige flache Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen. In diesen Modi wird die Farbkomponente für einen Grundtyp als Teil der Farbe für den ersten Scheitelpunkt des Grundtyps bereitgestellt. Bei monochromen Beleuchtungsmodi wird nur die blaue Komponente der Farbe interpoliert; in RGB-Beleuchtungsmodi werden natürlich die roten, grünen und blauen Komponenten interpoliert.
D3DPSHADECAPS_COLORGOURAUDMONO D3DPSHADECAPS_COLORGOURAUDRGB Das Gerät kann die farbige Gouraud-Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen. In diesen Modi wird die Farbkomponente für einen Grundtyp an Scheitelpunkten bereitgestellt und zusammen mit den anderen Farbkomponenten über ein Gesicht interpoliert. Bei monochromen Beleuchtungsmodi wird nur die blaue Komponente der Farbe interpoliert; in RGB-Beleuchtungsmodi werden natürlich die roten, grünen und blauen Komponenten interpoliert.
D3DPSHADECAPS_COLORPHONGMONO D3DPSHADECAPS_COLORPHONGRGB Das Gerät kann die farbige Phong-Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen. In diesen Modi werden Vertexparameter pro Pixel neu ausgewertet. Beleuchtungseffekte werden für die Rot-, Grün- und Blaufarbenkomponenten im RGB-Modus und für die blaue Komponente nur für den monochromen Modus angewendet.
D3DPSHADECAPS_FOGFLAT D3DPSHADECAPS_FOGGOURAUD, D3DPSHADECAPS_FOGPHONG Das Gerät kann Nebel in den Flach-, Gouraud- und Phong-Schattierungsmodellen unterstützen.
D3DPSHADECAPS_SPECULARFLATMONO D3DPSHADECAPS_SPECULARFLATRGB Das Gerät kann Glanzlichter durch den D3DRENDERSTATE_SPECULARENABLE Renderzustand in flacher Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen.
D3DPSHADECAPS_SPECULARGOURAUDMONO D3DPSHADECAPS_SPECULARGOURAUDRGB Das Gerät kann Glanzlichter durch den D3DRENDERSTATE_SPECULARENABLE Renderzustand in der Gouraud-Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen.
D3DPSHADECAPS_SPECULARPHONGMONO D3DPSHADECAPS_SPECULARPHONGRGB Das Gerät kann Glanzlichter durch den D3DRENDERSTATE_SPECULARENABLE Renderzustand in der Phong-Schattierung in den D3DCOLOR_MONO bzw. D3DCOLOR_RGB Farbmodellen unterstützen. Phong-Schattierung wird für DirectX 2.0 nicht unterstützt.

Die meisten Hardwaretreiber sollten die funktionen D3DPSHADECAPS_COLORFLATRGB und D3DPSHADECAPS_COLORGOURAUDRGB verfügbar machen. Hardware, die intensitätsbasierte Beleuchtung (Graustufen) unterstützt (weitere Details finden Sie unter D3DRENDERSTATE_MONOENABLE), sollten auch die funktionen D3DPSHADECAPS_COLORFLATMONO und D3DSHADECAPS_COLORGOURAUDMONO verfügbar machen.

dwTextureCaps

Gibt verschiedene Texturzuordnungsfunktionen an. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Wert Bedeutung
D3DPTEXTURECAPS_ALPHA RGBA-Texturen werden in den Modi D3DTEX_DECAL und D3DTEX_MODULATE Texturfilterung unterstützt. Wenn diese Funktion nicht festgelegt ist, werden nur RGB-Texturen in diesen Modi unterstützt. Unabhängig davon, ob dieses Kennzeichen festgelegt ist, muss Alpha immer in den D3DTEX_DECAL_MASK-, D3DTEX_DECAL_ALPHA- und D3DTEX_MODULATE_ALPHA Filtermodi unterstützt werden, wenn diese Filtermodi verfügbar sind.
D3DPTEXTURECAPS_ALPHAPALETTE Palettenisierte Texturoberflächen, deren Paletten Alphainformationen enthalten, werden unterstützt (siehe das Flag DDPCAPS_ALPHA in der DDCAPS-Struktur in der DirectDraw SDK-Dokumentation).
D3DPTEXTURECAPS_BORDER Texturzuordnung entlang von Rahmen wird unterstützt.
D3DPTEXTURECAPS_COLORKEYBLEND Das Gerät kann die Farbtastenmischung durchführen.
D3DPTEXTURECAPS_CUBEMAP Das Gerät kann die Cubeumgebungszuordnung unterstützen.
D3DPTEXTURECAPS_PERSPECTIVE Die Perspektivische Korrektur wird unterstützt. Siehe D3DRENDERSTATE_TEXTUREPERSPECTIVE in der DirectX SDK-Dokumentation.
D3DPTEXTURECAPS_POW2 Unter typischen Bedingungen erfordert das Gerät, dass Texturen Breite und Höhe aufweisen, die als Potenzen von 2 angegeben sind. Diese Anforderung gilt nicht für Würfeltexturen oder Volumentexturen. Wenn dieses Kennzeichen festgelegt ist, kann auch das D3DPTEXTURECAPS_NONPOW2CONDITIONAL Flag festgelegt werden.
D3DPTEXTURECAPS_PROJECTED Das Gerät kann transformierte Texturkoordinaten durch die COUNTth-Texturkoordinate dividieren. Das Gerät kann also D3DTTFF_PROJECTED. Siehe D3DTEXTURETRANSFORMFLAGS in der DirectX SDK-Dokumentation.
D3DPTEXTURECAPS_NONPOW2CONDITIONAL Unterstützt bedingt die Verwendung von zweidimensionalen (2D)-Texturen (d. h. keine Volumen- oder Würfeltexturen) mit Dimensionen, die keine Mächte von 2 sind. Ein Gerät, das diese Funktion verfügbar macht, kann eine solche Textur verwenden, wenn alle folgenden Anforderungen erfüllt sind.
  • Der Texturadressierungsmodus für die Texturstufe ist auf D3DTADDRESS_CLAMP festgelegt.
  • Der Texturumbruch für die Texturstufe ist deaktiviert (D3DRS_WRAPn auf 0 festgelegt).
  • Mipmapping wird nicht verwendet (nur Vergrößerungsfilter verwenden).
  • Textur wurde nicht in DXT1-5 (komprimierte Texturformate) gespeichert.
Ein Treiber für ein Gerät, das diese Funktion verfügbar macht, kann keine abhängigen Texturen mit einer solchen Textur ausführen. Das heißt, eine solche Textur kann nicht mithilfe von Texturkoordinaten behoben oder in Beispielen verwendet werden, die mit Shadercode berechnet werden. Anders ausgedrückt: Eine solche Textur kann nicht in einer Phase festgelegt werden, die basierend auf einer Shaderberechnung wie dem Bem, beml oder texm3x3 anweisungen in den Versionen 1.0-1.3 von Pixelshadern gelesen wird. Beispielsweise können diese Texturen verwendet werden, um Bumpmap-Daten zu speichern, die der Treiber für Texturlesevorgänge bereitstellt, aber nicht die Umgebungszuordnungen, die in texbem, texbeml oder texm3x3spec verwendet werden. Wenn dieses Kennzeichen festgelegt ist, muss auch das D3DPTEXTURECAPS_POW2 Flag festgelegt werden.
D3DPTEXTURECAPS_SQUAREONLY Alle Texturen müssen quadratisch sein.
D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE Texturindizes werden vor der Interpolation nicht durch die Texturgröße skaliert.
D3DPTEXTURECAPS_TEXTURETRANSFORM Das Gerät ist in der Lage, Texturtransformationen durchzuführen.
D3DPTEXTURECAPS_TRANSPARENCY Texturtransparenz wird unterstützt. (Nur die Texel, die nicht die aktuelle transparente Farbe sind, werden gezeichnet.)

dwTextureFilterCaps

Gibt Texturzuordnungsfunktionen an. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Wert Bedeutung
D3DPTFILTERCAPS_LINEAR Bilinearfilterung wird unterstützt. Es wird ein gewichteter Mittelwert eines 2:2-Bereichs von Texeln verwendet, der das gewünschte Pixel umgibt. Dies gilt sowohl für das Vergrößern als auch für das Verkleineren. Wenn entweder das Vergrößern oder Verkleineren unterstützt wird, müssen beide unterstützt werden.
D3DPTFILTERCAPS_LINEARMIPLINEAR Die trilineare Interpolation zwischen MIP-Karten wird unterstützt. Führt bilineare Filterung auf den beiden nächsten MIP-Karten aus, interpoliert dann linear zwischen den beiden Farben, um die endgültige Farbe zu bestimmen.
D3DPTFILTERCAPS_LINEARMIPNEAREST Die lineare Interpolation zwischen zwei punktförmigen MIP-Karten wird unterstützt. Wählt das nächste Texel aus den beiden nächstgelegenen MIP-Kartenebenen und führt dann eine lineare Interpolation zwischen ihnen aus.
D3DPTFILTERCAPS_MAGFAFLATCUBIC Pro Stufe wird eine flache kubische Filterung für Vergrößerungstexturen unterstützt. Der flach kubische Vergrößerungsfilter wird durch das D3DTFG_FLATCUBIC Element der D3DTEXTUREMAGFILTER-Enumeration dargestellt.
D3DPTFILTERCAPS_MAGFANISOTROPIC Die anisotrope Filterung pro Stufe für Vergrößerungstexturen wird unterstützt. Der anisotrope Vergrößerungsfilter wird durch das D3DTFG_ANISOTROPIC Element der D3DTEXTUREMAGFILTER Enumeration dargestellt.
D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC Pro Stufe wird gaussische kubische Filterung für Vergrößerungstexturen unterstützt. Der Gaussian-kubische Vergrößerungsfilter wird durch das D3DTFG_GAUSSIANCUBIC Element der D3DTEXTUREMAGFILTER Enumeration dargestellt.
D3DPTFILTERCAPS_MAGFLINEAR Die interpolierte Interpolationsfilterung pro Stufe für Vergrößerungstexturen wird unterstützt. Der Bilinear-Interpolationsvergrößerungsfilter wird durch das D3DTFG_LINEAR Element der D3DTEXTUREMAGFILTER-Enumeration dargestellt. Gibt an, dass bilineare Filterung für den Vergrößerungsfilter unterstützt wird.
D3DPTFILTERCAPS_MAGFPOINT Die punktbezogene Filterung pro Stufe für Vergrößerungstexturen wird unterstützt. Der Punktbeispiel-Vergrößerungsfilter wird durch das D3DTFG_POINT Element der D3DTEXTUREMAGFILTER-Enumeration dargestellt.
D3DPTFILTERCAPS_MINFANISOTROPIC Die pro Stufe anisotrope Filterung zur Minimierung von Texturen wird unterstützt. Der anisotrope Minifizierungsfilter wird durch das D3DTFN_ANISOTROPIC Element der D3DTEXTUREMINFILTER Enumeration dargestellt.
D3DPTFILTERCAPS_MINFLINEAR Die Interpolationsfilterung pro Stufe für bilineare Interpolation zur Minimierung von Texturen wird unterstützt. Der bilineare Minifizierungsfilter wird durch das D3DTFN_LINEAR Element der D3DTEXTUREMINFILTER-Aufzählung dargestellt.
D3DPTFILTERCAPS_MINFPOINT Die punktbezogene Filterung pro Phase zur Minimierung von Texturen wird unterstützt. Der Punktbeispiel-Minimierungsfilter wird durch den D3DTFN_POINT Member der D3DTEXTUREMINFILTER-Enumeration dargestellt.
D3DPTFILTERCAPS_MIPFLINEAR Die Interpolationsfilterung pro Stufe für MIP-Karten (d. h. bilineare Filterung zwischen MIP-Ebenen) wird unterstützt. Der MIP-Zuordnungsfilter mit trilinearer Interpolation wird durch das D3DTFP_LINEAR Element der D3DTEXTUREMIPFILTER-Aufzählung dargestellt.
D3DPTFILTERCAPS_MIPFPOINT Die punktbezogene Filterung pro Stufe für MIP-Karten wird unterstützt. Der MIP-Zuordnungsfilter für Punktbeispiele wird durch das D3DTFP_POINT Element der D3DTEXTUREMIPFILTER-Enumeration dargestellt.
D3DPTFILTERCAPS_MIPLINEAR Die nächste MIP-Zuordnung mit bilinearer Filterung, die auf das Ergebnis angewendet wird, wird unterstützt. Wählt das Texel aus der entsprechenden MIP-Karte mit den nächstgelegenen Koordinaten und führt dann einen gewichteten Mittelwert mit den vier umgebenden Texeln aus, um die endgültige Farbe zu bestimmen.
D3DPTFILTERCAPS_MIPNEAREST Die nächste MIP-Zuordnung wird unterstützt. Wählt das Texel aus der entsprechenden MIP-Karte mit Koordinaten, die dem gewünschten Pixelwert am nächsten sind.
D3DPTFILTERCAPS_NEAREST Punktsampling wird unterstützt. Das Texel mit Koordinaten, die dem gewünschten Pixelwert am nächsten sind, wird verwendet. Dies gilt sowohl für das Vergrößern als auch für das Verkleineren. Wenn entweder das Vergrößern oder Verkleineren unterstützt wird, müssen beide unterstützt werden.

dwTextureBlendCaps

Gibt Texturmischungsfunktionen an. Informationen zu den verschiedenen Texturmischungsmodi finden Sie im D3DRENDERSTATE_TEXTUREMAPBLEND aufgezählten Typ. Dieses Mitglied kann eine oder mehrere der folgenden Sein:

Wert Bedeutung
D3DPTBLENDCAPS_ADD Die Texturvermischung im Add-Mode wird unterstützt (D3DTBLEND_COPY aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_COPY Die Texturvermischung im Kopiermodus wird unterstützt (D3DTBLEND_COPY aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_DECAL Der Decal-Textur-Blending-Modus wird unterstützt (D3DTBLEND_DECAL aus dem D3DTEXTUREBLEND aufgezählten Typ).
D3DPTBLENDCAPS_DECALALPHA Der Decal-Alpha-Texturmischungsmodus wird unterstützt (D3DTBLEND_DECALALPHA aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_DECALMASK Der Textur-Blendungsmodus für die Decalmaske wird unterstützt (D3DTBLEND_DECALMASK aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_MODULATE Der Modulierungs-Textur-Blending-Modus wird unterstützt (D3DTBLEND_MODULATE aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_MODULATEALPHA Der Modulate-Alpha-Texturmischungsmodus wird unterstützt (D3DTBLEND_MODULATEALPHA aus dem D3DTEXTUREBLEND Aufzählungstyp).
D3DPTBLENDCAPS_MODULATEMASK Der Texturmischungsmodus für modulierte Masken wird unterstützt (D3DTBLEND_MODULATEMASK aus dem D3DTEXTUREBLEND Aufzählungstyp).

dwTextureAddressCaps

Gibt die Texturadressierungsfunktionen an. Dieses Element kann eine oder mehrere der folgenden Modi sein, die D3DTEXTUREADDRESS Texturadressierungsmodi entsprechen:

Wert Bedeutung
D3DPTADDRESSCAPS_BORDER Das Gerät unterstützt das Festlegen von Koordinaten außerhalb des Bereichs [0,0, 1,0] auf die Rahmenfarbe, wie durch den D3DTSS_BORDERCOLOR Texturstufenzustand angegeben. Diese Fähigkeit entspricht dem D3DTADDRESS_BORDER Texturadressierungsmodus.
D3DPTADDRESSCAPS_CLAMP Das Gerät kann Texturen an Adressen klammern. Diese Fähigkeit entspricht dem D3DTADDRESS_CLAMP Texturadressierungsmodus.
D3DPTADDRESSCAPS_INDEPENDENTUV Das Gerät kann die Texturadressierungsmodi der Texturen und V-Koordinaten der Textur trennen. Diese Fähigkeit entspricht den D3DTSS_ADDRESSU- und D3DTSS_ADDRESSV Texturstufenzuständen.
D3DPTADDRESSCAPS_MIRROR Das Gerät kann Texturen auf Adressen spiegeln. Diese Fähigkeit entspricht dem D3DTADDRESS_MIRROR Texturadressierungsmodus.
D3DPTADDRESSCAPS_WRAP Das Gerät kann Texturen in Adressen umschließen. Diese Fähigkeit entspricht dem D3DTADDRESS_WRAP Texturadressierungsmodus.

dwStippleWidth

dwStippleHeight

Geben Sie die maximale Breite und Höhe des unterstützten Stipple an (bis zu 32 x 32).

Bemerkungen

Diese Struktur wurde durch D3DCAPS8 (siehe DirectX 8.0 SDK-Dokumentation) für DirectX 8.0 und höhere Laufzeiten ersetzt, ist jedoch für die Kompatibilität mit DirectX 7.0 und früheren Laufzeiten erforderlich. Ausführliche Informationen finden Sie unter Reporting DirectX 8.0 Style Direct3D Capabilities.

Diese Struktur wird verwendet, wenn ein Gerät erstellt wird und die Funktionen eines Geräts abgefragt werden. Es definiert mehrere Member in der D3DDEVICEDESC_V1-Struktur.

Anforderungen

Anforderung Wert
Header- d3dcaps.h (include D3dcaps.h)

Siehe auch

D3DDEVICEDESC_V1