D3DPRIMCAPS結構 (d3dcaps.h)
在 DirectX 8.0 和更新版本中已過時;請參閱。
D3DPRIMCAPS 結構會定義每個基本類型的功能。
語法
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;
成員
dwSize
指定D3DPRIMCAPS結構的大小,以位元組為單位。
dwMiscCaps
指定這個基本類型的一般功能。 此成員可以是下列其中一或多個:
值 | 意義 |
---|---|
D3DPMISCCAPS_CONFORMANT | 裝置符合 OpenGL 標準。 |
D3DPMISCCAPS_CULLCCW | 驅動程式支援反時針撲殺D3DRENDERSTATE_CULLMODE轉譯狀態。 (這隻適用於三角形基本類型。這對應於D3DCULL列舉型別的D3DCULL_CCW列舉值。 |
D3DPMISCCAPS_CULLCW | 驅動程式支持順時針三角形撲殺D3DRENDERSTATE_CULLMODE轉譯狀態。 (這隻適用於三角形基本類型。這會對應至D3DCULL列舉型別的D3DCULL_CW列舉值。 |
D3DPMISCCAPS_CULLNONE | 驅動程式不會執行三角形撲殺。 這會對應至D3DCULL列舉型別的D3DCULL_NONE列舉值。 |
D3DPMISCCAPS_LINEPATTERNREP | 驅動程式可以在 D3DLINEPATTERN 結構的 wRepeatFactor 成員中處理 1 以外的值。 (這隻適用於線條繪製基本類型。 應用程式可以將行模式重複編號設定為最大值 65535 (16 位值)。 不過,硬體只支援最多 255 個 (8 位值)。 因此,顯示驅動程式必須失敗,要求嘗試將此數位設定為大於 255 的值做為無效的要求。 如需詳細資訊,請參閱 設定行圖樣重複次數。 D3DPMISCCAPS_LINEPATTERNREP和D3DPRASTERCAPS_PAT必須一致地設定(兩者皆開啟或關閉)。 |
D3DPMISCCAPS_MASKPLANES | 裝置可以執行色彩平面的位掩碼。 |
D3DPMISCCAPS_MASKZ | 裝置可以在像素作業上啟用和停用 z 緩衝區的修改。 |
dwRasterCaps
包含點陣繪製功能的相關信息。 此成員可以是下列其中一或多個:
價值 | 意義 |
---|---|
D3DPRASTERCAPS_ANISOTROPY | 裝置支援異向性篩選。 如需詳細資訊,請參閱 DirectX SDK 檔中D3DTSS_MAXANISOTROPY。 |
D3DPRASTERCAPS_ANTIALIASEDGES | 裝置可以反鋸齒線,形成物件的凸凸外框。 如需詳細資訊,請參閱 DirectX SDK 檔中D3DRENDERSTATE_EDGEANTIALIAS。 |
D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT | 裝置支援反鋸齒,其相依於多邊形的排序順序(背對前或前對後)。 應用程式必須以正確的順序繪製多邊形,才能進行反鋸齒。 如需詳細資訊,請參閱 DirectX SDK 檔中的D3DANTIALIASMODE列舉類型。 |
D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT | 裝置支援不相依於多邊形排序順序的反鋸齒。 如需詳細資訊,請參閱 DirectX SDK 檔中的D3DANTIALIASMODE列舉類型。 |
D3DPRASTERCAPS_DITHER | 裝置可以透過D3DRENDERSTATE_DITHERENABLE轉譯狀態來改善色彩解析度。 |
D3DPRASTERCAPS_FOGRANGE | 裝置支援以範圍為基礎的霧,其中物件與查看器的距離,而不是物件的深度(其 z 座標),用於計算場景中的霧效果。 如需詳細資訊,請參閱 DirectX SDK 檔中D3DRENDERSTATE_RANGEFOGENABLE。 |
D3DPRASTERCAPS_FOGTABLE | 裝置會參考查閱數據表,以計算霧值,其中包含已編製索引至指定圖元深度的霧值。 如需詳細資訊,請參閱 DirectX SDK 檔中的D3DRENDERSTATE_FOGCOLOR、D3DRENDERSTATE_FOGDENSITY、D3DRENDERSTATE_FOGENABLE、D3DRENDERSTATE_FOGEND、D3DRENDERSTATE_FOGSTART和D3DRENDERSTATE_FOGTABLEMODE。 |
D3DPRASTERCAPS_FOGVERTEX | 裝置會在光源作業期間計算霧值、將值放入D3DCOLOR值的 alpha 元件中,指定給D3DTLVERTEX結構的反射成員(定義於 Direct3D SDK 檔中),並在點陣化期間插補霧值。 如需詳細資訊,請參閱 DirectX SDK 檔中的 D3DRENDERSTATE_FOGCOLOR、D3DRENDERSTATE_FOGDENSITY、D3DRENDERSTATE_FOGENABLE、D3DRENDERSTATE_FOGEND、D3DRENDERSTATE_FOGSTART 和 D3DRENDERSTATE_FOGVERTEXMODE。 |
D3DPRASTERCAPS_PAT | 驅動程式可以針對要查詢的基本類型執行圖樣繪圖(線條或填滿D3DRENDERSTATE_LINEPATTERN或其中一個D3DRENDERSTATE_STIPPLEPATTERN轉譯狀態)。 D3DPRASTERCAPS_PAT和D3DPMISCCAPS_LINEPATTERNREP必須一致地設定 (同時開啟或同時關閉)。 |
D3DPRASTERCAPS_ROP2 | 裝置可以支援R2_COPYPEN以外的點陣作業。 |
D3DPRASTERCAPS_STIPPLE | 裝置可以安裝多邊形來模擬半透明。 |
D3DPRASTERCAPS_SUBPIXEL | 裝置會執行 z、色彩和紋理數據的子圖元位置,而不是使用最接近的整數圖元座標。 這有助於避免出血,因為圖元的色彩和紋理值的抖動。 請注意,沒有可以啟用和停用的對應狀態;裝置會執行子圖元放置或未執行,且此位只存在,因此 Direct3D 用戶端可以更妥善地判斷轉譯品質。 |
D3DPRASTERCAPS_SUBPIXELX | 裝置僅沿著 x 軸的子圖元精確,並夾在整數 Y 軸掃描線。 如需子圖元精確度的相關信息,請參閱先前提到的D3DPRASTERCAPS_SUBPIXEL定義。 |
D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT | 硬體可以在不進行排序的情況下執行半透明。 這是用於反鋸齒的 A 緩衝區技術分支。 |
D3DPRASTERCAPS_WBUFFER | 裝置支援 w-buffering。 |
D3DPRASTERCAPS_WFOG | 裝置支援 w 型霧。 |
D3DPRASTERCAPS_XOR | 裝置可以支援 XOR 作業。 如果未設定此旗標,但已設定D3DPRASTER_ROP2,則仍必須支援 XOR 作業。 |
D3DPRASTERCAPS_ZBIAS | 裝置支援 z 偏差值、指派給多邊形的整數值,以允許實際共同平面多邊形顯示個別。 如需詳細資訊,請參閱 DirectX SDK 檔中D3DRENDERSTATE_ZBIAS。 |
D3DPRASTERCAPS_ZBUFFERLESSHSR | 裝置可以執行隱藏表面移除 (HSR),而不需要應用程式排序多邊形,也不需要配置 z 緩衝區。 這會為紋理留下更多的視訊記憶體。 用來執行 HSR 的方法與硬體相關,而且對應用程式而言是透明的。 如果未將 z 緩衝區表面附加至轉譯目標介面並啟用 z 緩衝區比較測試,則會執行無 Z 緩衝區 HSR(也就是說,當與D3DRENDERSTATE_ZENABLE轉譯狀態值相關聯的狀態值設定為 TRUE 時)。 |
D3DPRASTERCAPS_ZFOG | 裝置支援 z 型霧。 |
D3DPRASTERCAPS_ZTEST | 裝置可以執行 z-test 作業。 這會有效地轉譯基本類型,並指出是否已轉譯任何 z 圖元。 |
dwZCmpCaps
指定驅動程式可透過D3DRENDERSTATE_ZFUNC轉譯狀態執行的 Z 緩衝區比較函式。 此成員可以是下列其中一或多個:
比較函式 | 描述 |
---|---|
D3DPCMPCAPS_ALWAYS | 一律通過 z 測試。 |
D3DPCMPCAPS_EQUAL | 如果新的 z 等於目前的 z,請通過 z 測試。 |
D3DPCMPCAPS_GREATER | 如果新的 z 大於目前的 z,請通過 z 測試。 |
D3DPCMPCAPS_GREATEREQUAL | 如果新的 z 大於或等於目前的 z,請通過 z 測試。 |
D3DPCMPCAPS_LESS | 如果新的 z 小於目前的 z,請通過 z 測試。 |
D3DPCMPCAPS_LESSEQUAL | 如果新的 z 小於或等於目前的 z,請通過 z 測試。 |
D3DPCMPCAPS_NEVER | 一律失敗 z 測試。 |
D3DPCMPCAPS_NOTEQUAL | 如果新的 z 不等於目前的 z,請通過 z 測試。 |
dwSrcBlendCaps
指定驅動程式透過D3DRENDERSTATE_SRCBLEND轉譯狀態所支援的來源混合功能。 這個成員可以是下列其中一或多個值。 (來源和目的地的 RGBA 值會以下標 s 和 d 表示。
價值 | 意義 |
---|---|
D3DPBLENDCAPS_BOTHINVSRCALPHA | 來源混合因數為 (1 - As, 1 - As, 1 - As, 1 - As), 目的地混合因數為 (As, As, As, As, As):已覆寫目的地混合選取範圍。 |
D3DPBLENDCAPS_BOTHSRCALPHA | 來源混合因數為 (As、As、As、As) 和目的地混合因數為 (1 - As, 1 - As, 1 - As, 1 - As, 1 - As] :已覆寫目的地混合選取範圍。 |
D3DPBLENDCAPS_DESTALPHA | Blend Factor 為 (Ad、Ad、Ad、Ad、 Ad)。 |
D3DPBLENDCAPS_DESTCOLOR | Blend Factor is (Rd, Gd, Bd, Ad) 。 |
D3DPBLENDCAPS_INVDESTALPHA | Blend Factor 是 (1 - 廣告, 1 - 廣告, 1 - 廣告, 1 - 廣告)。 |
D3DPBLENDCAPS_INVDESTCOLOR | Blend Factor is (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad) 。 |
D3DPBLENDCAPS_INVSRCALPHA | 混合因數為 (1 - As, 1 - As, 1 - As, 1 - As, 1 - As)。 |
D3DPBLENDCAPS_INVSRCCOLOR | 混合因數為 (1 - Rs, 1 - Gs, 1 - Bs, 1 - As) 。 |
D3DPBLENDCAPS_ONE | 混合因數為 (1, 1, 1, 1) 。 |
D3DPBLENDCAPS_SRCALPHA | 混合因數為 (As、As、As、As)。 |
D3DPBLENDCAPS_SRCALPHASAT | 混合因數為 (f, f, f, 1):f = min(As, 1 - Ad)。 |
D3DPBLENDCAPS_SRCCOLOR | 混合因數為 (Rs, Gs, Bs, As) 。 |
D3DPBLENDCAPS_ZERO | 混合因數為 (0, 0, 0, 0, 0)。 |
dwDestBlendCaps
指定驅動程式透過D3DRENDERSTATE_DESTBLEND轉譯狀態支援的目的地混合功能。 這個成員可以是針對 dwSrcBlendCaps 成員所定義的相同功能。
dwAlphaCmpCaps
指定驅動程式可執行的 Alpha 測試比較函式。 此成員會使用與 dwZCmpCaps 成員所定義的相同比較函式。 如果 dwAlphaCmpCaps D3DPRIMCAPS 結構的成員是 0,則驅動程式不支援 alpha 測試轉譯狀態D3DRENDERSTATE_ALPHAFUNC、D3DRENDERSTATE_ALPHAREF和D3DRENDERSTATE_ALPHATESTENABLE。
dwShadeCaps
指定裝置可執行的底紋作業。 一般而言,假設裝置完全支援指定的命令(例如D3DOP_TRIANGLE),它支援D3DSHADE_FLAT模式(如 DirectX SDK 檔中的D3DSHADEMODE列舉類型所指定)。 此旗標會指定驅動程式是否可以同時支援 Gouraud 和 Phong 底紋,以及三種色彩產生模式中是否支援 Alpha 色彩元件。 當指定模式中不支援 Alpha 元件時,該模式中產生的色彩 Alpha 值會隱含為 255。 這是最大可能的Alpha(也就是Alpha元件處於完整強度)。
三角形的色彩、反射醒目提示、霧氣和Alpha插補項各有功能旗標,應用程式可用來找出設備驅動器如何實作它們。 這些會由陰影模式和色彩模型修改,以及色彩的 Alpha 元件是混合還是 Stippled。
此成員可以是下表所列的一或多個值。 相關旗標會分組在此數據表中。
價值 | 意義 |
---|---|
D3DPSHADECAPS_ALPHAFLATBLEND D3DPSHADECAPS_ALPHAFLATSTIPPLED | 裝置可以分別支援平面混合和固定(D3DRENDERSTATE_STIPPLEDALPHA)透明度的Alpha元件(D3DSHADEMODE列舉類型的D3DSHADE_FLAT狀態)。 在這些模式中,基本類型的 Alpha 色彩元件會作為基本類型第一個頂點色彩的一部分提供。 |
D3DPSHADECAPS_ALPHAGOURAUDBLEND D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED | 裝置可以分別支援 Gouraud 混合和 stippled (D3DRENDERSTATE_STIPPLEDALPHA) 透明度的 Alpha 元件(D3DSHADEMODE列舉類型的D3DSHADE_GOURAUD狀態)。 在這些模式中,基本類型的 Alpha 色彩元件會在頂點提供,並與其他色彩元件一起插補臉部。 |
D3DPSHADECAPS_ALPHAPHONGBLEND D3DPSHADECAPS_ALPHAPHONGSTIPPLED | 裝置可以分別支援 Phong 混合和 stippled (D3DRENDERSTATE_STIPPLEDALPHA) 透明度的 Alpha 元件(D3DSHADEMODE列舉類型的D3DSHADE_PHONG狀態)。 在這些模式中,頂點參數會根據每個圖元重新評估,並套用紅色、綠色和藍色元件的光源效果。 |
D3DPSHADECAPS_COLORFLATMONO D3DPSHADECAPS_COLORFLATRGB | 裝置可以分別支援D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的彩色平面底紋。 在這些模式中,基本類型的色彩元件會作為基本類型第一個頂點色彩的一部分提供。 在單色光源模式中,只會插補色彩的藍色元件:當然,在 RGB 光源模式中,會插補紅色、綠色和藍色元件。 |
D3DPSHADECAPS_COLORGOURAUDMONO D3DPSHADECAPS_COLORGOURAUDRGB | 裝置可以分別支援D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的彩色 Gouraud 底紋。 在這些模式中,基本類型的色彩元件會以頂點提供,並與其他色彩元件一起插補到臉部。 在單色光源模式中,只會插補色彩的藍色元件:當然,在 RGB 光源模式中,會插補紅色、綠色和藍色元件。 |
D3DPSHADECAPS_COLORPHONGMONO D3DPSHADECAPS_COLORPHONGRGB | 裝置可以分別支援D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的彩色 Phong 底紋。 在這些模式中,頂點參數會根據每個圖元重新評估。 光源效果會套用到 RGB 模式中的紅色、綠色和藍色元件,而只針對單色模式套用藍色元件。 |
D3DPSHADECAPS_FOGFLAT D3DPSHADECAPS_FOGGOURAUD、D3DPSHADECAPS_FOGPHONG | 裝置可以分別支援平面、Gouraud 和 Phong 底紋模型的霧。 |
D3DPSHADECAPS_SPECULARFLATMONO D3DPSHADECAPS_SPECULARFLATRGB | 裝置可以透過D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的平面底紋,透過D3DRENDERSTATE_SPECULARENABLE呈現狀態來支援反射醒目提示。 |
D3DPSHADECAPS_SPECULARGOURAUDMONO D3DPSHADECAPS_SPECULARGOURAUDRGB | 裝置可以透過D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的 Gouraud 底紋D3DRENDERSTATE_SPECULARENABLE轉譯狀態,支援反射醒目提示。 |
D3DPSHADECAPS_SPECULARPHONGMONO D3DPSHADECAPS_SPECULARPHONGRGB | 裝置可以透過 Phong 底紋中的D3DRENDERSTATE_SPECULARENABLE呈現狀態,分別支援D3DCOLOR_MONO和D3DCOLOR_RGB色彩模型的反射醒目提示。 DirectX 2.0 不支援 Phong 底紋。 |
大部分的硬體驅動程式都應該公開D3DPSHADECAPS_COLORFLATRGB和D3DPSHADECAPS_COLORGOURAUDRGB功能。 支援強度(灰階)光源的硬體(如需詳細資訊,請參閱D3DRENDERSTATE_MONOENABLE)也應該公開D3DPSHADECAPS_COLORFLATMONO和D3DSHADECAPS_COLORGOURAUDMONO功能。
dwTextureCaps
指定其他紋理對應功能。 此成員可以是下列其中一或多個:
值 | 意義 |
---|---|
D3DPTEXTURECAPS_ALPHA | D3DTEX_DECAL和D3DTEX_MODULATE紋理篩選模式支援 RGBA 紋理。 如果未設定這項功能,這些模式僅支援 RGB 紋理。 不論是否已設定此旗標,只要有可用的篩選模式,都必須在D3DTEX_DECAL_MASK、D3DTEX_DECAL_ALPHA和D3DTEX_MODULATE_ALPHA篩選模式中支援 Alpha。 |
D3DPTEXTURECAPS_ALPHAPALETTE | 支援調色盤包含 Alpha 資訊的板狀紋理表面(請參閱 DirectDraw SDK 檔中 DDCAPS 結構中的DDPCAPS_ALPHA旗標)。 |
D3DPTEXTURECAPS_BORDER | 支援沿著框線的紋理對應。 |
D3DPTEXTURECAPS_COLORKEYBLEND | 裝置能夠執行色彩索引鍵混合。 |
D3DPTEXTURECAPS_CUBEMAP | 裝置能夠支援 Cube 環境對應。 |
D3DPTEXTURECAPS_PERSPECTIVE | 支持檢視方塊修正。 請參閱 DirectX SDK 檔中的D3DRENDERSTATE_TEXTUREPERSPECTIVE。 |
D3DPTEXTURECAPS_POW2 | 在一般情況下,裝置要求紋理的寬度和高度指定為 2 的乘冪。 這項需求不適用於立方體紋理或磁碟區紋理。 如果已設定此旗標,也可能設定D3DPTEXTURECAPS_NONPOW2CONDITIONAL旗標。 |
D3DPTEXTURECAPS_PROJECTED | 裝置可以將轉換的紋理座標除以COUNTth紋理座標。 換句話說,裝置可以執行D3DTTFF_PROJECTED。 請參閱 DirectX SDK 檔中的D3DTEXTURETRANSFORMFLAGS。 |
D3DPTEXTURECAPS_NONPOW2CONDITIONAL | 有條件地支援使用二維(2D)紋理(也就是,不是磁碟區或立方體紋理),其維度不是 2。 如果符合下列所有需求,公開這項功能的裝置可以使用這類紋理。
|
D3DPTEXTURECAPS_SQUAREONLY | 所有紋理都必須是正方形。 |
D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE | 在插補之前,紋理索引不會依紋理大小進行調整。 |
D3DPTEXTURECAPS_TEXTURETRANSFORM | 裝置能夠執行紋理轉換。 |
D3DPTEXTURECAPS_TRANSPARENCY | 支援紋理透明度。 (只會繪製不是目前透明色彩的紋素。 |
dwTextureFilterCaps
指定紋理對應功能。 此成員可以是下列其中一或多個:
價值 | 意義 |
---|---|
D3DPTFILTERCAPS_LINEAR | 支援雙線性篩選。 使用所需像素周圍紋素面積的加權平均值。 這適用於放大和縮小。如果支援放大或縮小,則必須支援這兩者。 |
D3DPTFILTERCAPS_LINEARMIPLINEAR | 支援 MIP 對應之間的三線性插補。 對兩個最接近的 MIP 地圖執行雙線性篩選,然後以線性方式插補兩種色彩,以判斷最終色彩。 |
D3DPTFILTERCAPS_LINEARMIPNEAREST | 支援兩點取樣 MIP 對應之間的線性插補。 從兩個最接近的 MIP 地圖層級選擇最接近的紋素,然後在兩者之間執行線性插補。 |
D3DPTFILTERCAPS_MAGFAFLATCUBIC | 支援放大紋理的個別階段平面立方篩選。 平面立方放大篩選是由D3DTEXTUREMAGFILTER列舉D3DTFG_FLATCUBIC成員表示。 |
D3DPTFILTERCAPS_MAGFANISOTROPIC | 支援放大紋理的個別階段非正向性篩選。 anisotropic 放大鏡篩選器是由D3DTEXTUREMAGFILTER列舉的D3DTFG_ANISOTROPIC成員表示。 |
D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC | 支援放大紋理的個別階段高斯-立方篩選。 Gaussian-cubic 放大篩選條件是由D3DTEXTUREMAGFILTER列舉D3DTFG_GAUSSIANCUBIC成員表示。 |
D3DPTFILTERCAPS_MAGFLINEAR | 支援放大紋理的個別階段雙線性插補篩選。 雙線性插補放大篩選是由D3DTEXTUREMAGFILTER列舉D3DTFG_LINEAR成員表示。 指定支援放大篩選上的雙線性篩選。 |
D3DPTFILTERCAPS_MAGFPOINT | 支援放大紋理的個別階段點取樣篩選。 點樣本放大篩選是由D3DTEXTUREMAGFILTER列舉D3DTFG_POINT成員表示。 |
D3DPTFILTERCAPS_MINFANISOTROPIC | 支援針對縮製紋理進行個別階段的異向性篩選。 anisotropic minification 篩選是由D3DTEXTUREMINFILTER列舉D3DTFN_ANISOTROPIC成員表示。 |
D3DPTFILTERCAPS_MINFLINEAR | 支援用於縮小紋理的個別階段雙線性插補篩選。 雙線性縮製篩選器是由D3DTEXTUREMINFILTER列舉D3DTFN_LINEAR成員表示。 |
D3DPTFILTERCAPS_MINFPOINT | 支援每個階段點取樣的紋理取樣篩選。 點取樣縮製篩選是由D3DTEXTUREMINFILTER列舉D3DTFN_POINT成員表示。 |
D3DPTFILTERCAPS_MIPFLINEAR | 支援 MIP 地圖的每個階段三線性插補篩選(也就是 MIP 層級之間的雙線性篩選)。 三行內插補 MIP 對應篩選是由D3DTEXTUREMIPFILTER列舉D3DTFP_LINEAR成員表示。 |
D3DPTFILTERCAPS_MIPFPOINT | 支援 MIP 地圖的個別階段點取樣篩選。 點範例 MIP 對應篩選是由D3DTEXTUREMIPFILTER列舉D3DTFP_POINT成員表示。 |
D3DPTFILTERCAPS_MIPLINEAR | 支援最接近的 MIP 對應,並套用至結果的雙線性篩選。 從具有最接近座標的適當 MIP 地圖中選擇紋素,然後使用四個周圍紋素執行加權平均,以判斷最終色彩。 |
D3DPTFILTERCAPS_MIPNEAREST | 支援最接近的 MIP 對應。 從最接近所需圖元值的座標,從適當的 MIP 地圖中選擇紋素。 |
D3DPTFILTERCAPS_NEAREST | 支援點取樣。 使用最接近所需圖元值的座標紋素。 這適用於放大和縮小。如果支援放大或縮小,則必須支援這兩者。 |
dwTextureBlendCaps
指定紋理混合功能。 如需各種紋理混合模式的討論,請參閱D3DRENDERSTATE_TEXTUREMAPBLEND列舉類型。 此成員可以是下列其中一或多個:
價值 | 意義 |
---|---|
D3DPTBLENDCAPS_ADD | 支援新增模式紋理混合(從D3DTEXTUREBLEND列舉類型D3DTBLEND_COPY)。 |
D3DPTBLENDCAPS_COPY | 支援複製模式紋理混合(D3DTEXTUREBLEND列舉類型的D3DTBLEND_COPY)。 |
D3DPTBLENDCAPS_DECAL | 支持裝飾紋理混合模式(D3DTBLEND_DECAL來自D3DTEXTUREBLEND列舉型別)。 |
D3DPTBLENDCAPS_DECALALPHA | 支援 decal-alpha 紋理混合模式(D3DTBLEND_DECALALPHA來自D3DTEXTUREBLEND列舉型別)。 |
D3DPTBLENDCAPS_DECALMASK | 支援 decal-mask 紋理混合模式(D3DTBLEND_DECALMASK來自D3DTEXTUREBLEND列舉型別)。 |
D3DPTBLENDCAPS_MODULATE | 支援調色-紋理混合模式(D3DTBLEND_MODULATE來自D3DTEXTUREBLEND列舉型別)。 |
D3DPTBLENDCAPS_MODULATEALPHA | 支援調色法-Alpha 紋理混合模式(D3DTBLEND_MODULATEALPHA來自D3DTEXTUREBLEND列舉類型)。 |
D3DPTBLENDCAPS_MODULATEMASK | 支援調色-遮罩紋理混合模式(D3DTBLEND_MODULATEMASK來自D3DTEXTUREBLEND列舉類型)。 |
dwTextureAddressCaps
指定紋理尋址功能。 這個成員可以是下列其中一或多個,對應至D3DTEXTUREADDRESS紋理尋址模式:
價值 | 意義 |
---|---|
D3DPTADDRESSCAPS_BORDER | 裝置支援將 [0.0, 1.0] 以外的座標設定為框線色彩,如D3DTSS_BORDERCOLOR紋理階段狀態所指定。 這項功能會對應至紋理尋址模式D3DTADDRESS_BORDER。 |
D3DPTADDRESSCAPS_CLAMP | 裝置可以將紋理夾在位址上。 這項功能會對應至紋理尋址模式D3DTADDRESS_CLAMP。 |
D3DPTADDRESSCAPS_INDEPENDENTUV | 裝置可以分隔紋理的紋理尋址模式,以及紋理的 V 座標。 這項功能會對應至紋理階段狀態的D3DTSS_ADDRESSU和D3DTSS_ADDRESSV。 |
D3DPTADDRESSCAPS_MIRROR | 裝置可以將紋理鏡像到位址。 這項功能會對應至紋理尋址模式D3DTADDRESS_MIRROR。 |
D3DPTADDRESSCAPS_WRAP | 裝置可以將紋理包裝到位址。 這項功能會對應至紋理尋址模式D3DTADDRESS_WRAP。 |
dwStippleWidth
dwStippleHeight
指定所支援 Stipple 的最大寬度和高度(最多 32 到 32)。
言論
此結構已由 D3DCAPS8 取代(請參閱 DirectX 8.0 SDK 檔)以取得 DirectX 8.0 和更新版本的運行時間,但 DirectX 7.0 和舊版運行時間相容性是必要的。 如需詳細資訊,請參閱 Reporting DirectX 8.0 Style Direct3D 功能。
建立裝置以及查詢裝置的功能時,會使用此結構。 它會在 D3DDEVICEDESC_V1 結構中定義數個成員。
要求
要求 | 價值 |
---|---|
標頭 | d3dcaps.h (包括 D3dcaps.h) |