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 设备支持基于范围的雾,其中对象与查看器的距离(而不是对象的深度)用于计算场景中的雾效果。 有关详细信息,请参阅 DirectX SDK 文档中D3DRENDERSTATE_RANGEFOGENABLE。
D3DPRASTERCAPS_FOGTABLE 设备通过引用一个查找表来计算雾值,该表包含为给定像素深度编制索引的雾值。 有关详细信息,请参阅 DirectX SDK 文档中的D3DRENDERSTATE_FOGCOLOR、D3DRENDERSTATE_FOGDENSITY、D3DRENDERSTATE_FOGENABLE、D3DRENDERSTATE_FOGEND、D3DRENDERSTATE_FOGSTART和D3DRENDERSTATE_FOGTABLEMODE。
D3DPRASTERCAPS_FOGVERTEX 设备在照明作期间计算雾值,将该值放入为D3DTLVERTEX结构(在 Direct3D SDK 文档中定义)的反射成员提供的D3DCOLOR值的 alpha 分量中,并在光栅化期间内插雾值。 有关详细信息,请参阅 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、颜色和纹理数据的子像素放置,而不是使用最接近的整数像素坐标。 这有助于避免因 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 缓冲区比较测试(即,当与D3DRENDERSTATE_ZENABLE呈现状态值关联的状态值设置为 TRUE 时),则执行无 Z 缓冲区 HSR。
D3DPRASTERCAPS_ZFOG 设备支持基于 z 的雾。
D3DPRASTERCAPS_ZTEST 设备可以执行 z 测试作。 这会有效地呈现基元,并指示是否呈现任何 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):将覆盖目标混合选择。
D3DPBLENDCAPS_BOTHSRCALPHA 源混合因子为(As、As、As、As)和目标混合因子为(1 - As、1 - As、1 - As、1 - As):将覆盖目标混合选择。
D3DPBLENDCAPS_DESTALPHA Blend factor 为 (Ad, Ad, Ad, Ad, Ad)。
D3DPBLENDCAPS_DESTCOLOR 混合因子为 (Rd, Gd, Bd, Ad)。
D3DPBLENDCAPS_INVDESTALPHA 混合因子为(1 - 广告,1 - 广告,1 - 广告,1 - 广告)。
D3DPBLENDCAPS_INVDESTCOLOR 混合因子为 (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)。

dwDestBlendCaps

指定驱动程序通过D3DRENDERSTATE_DESTBLEND呈现状态支持的目标混合功能。 此成员可以是为 dwSrcBlendCaps 成员定义的相同功能。

dwAlphaCmpCaps

指定驱动程序可执行的 alpha-test 比较函数。 此成员使用与为 dwZCmpCaps 成员定义的相同比较函数。 如果D3DPRIMCAPS结构的 dwAlphaCmpCaps 成员为 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 分量是混合还是混合。

此成员可以是下表中列出的一个或多个值。 相关标志在此表中组合在一起。

价值 意义
D3DPSHADECAPS_ALPHAFLATBLEND D3DPSHADECAPS_ALPHAFLATSTIPPLED 设备可以分别支持平面混合和固定(D3DRENDERSTATE_STIPPLEDALPHA)透明度的 alpha 组件(D3DSHADEMODE枚举类型的D3DSHADE_FLAT状态)。 在这些模式下,基元的 alpha 颜色组件作为基元第一个顶点的颜色的一部分提供。
D3DPSHADECAPS_ALPHAGOURAUDBLEND D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 设备可以分别支持 Gouraud 混合和存根(D3DRENDERSTATE_STIPPLEDALPHA)透明度的 alpha 组件(D3DSHADEMODE枚举类型的D3DSHADE_GOURAUD状态)。 在这些模式下,基元的 alpha 颜色分量以顶点提供,并与其他颜色组件一起内插在人脸上。
D3DPSHADECAPS_ALPHAPHONGBLEND D3DPSHADECAPS_ALPHAPHONGSTIPPLED 设备可以分别支持 Phong 混合和存根(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 设备可以分别支持平面、古鲁德和 Phong 底纹模型中的雾。
D3DPSHADECAPS_SPECULARFLATMONO D3DPSHADECAPS_SPECULARFLATRGB 设备可以通过在D3DCOLOR_MONO和D3DCOLOR_RGB颜色模型中的平面底纹中通过D3DRENDERSTATE_SPECULARENABLE呈现状态支持反射高光。
D3DPSHADECAPS_SPECULARGOURAUDMONO D3DPSHADECAPS_SPECULARGOURAUDRGB 设备可以通过 Gouraud 底纹中的D3DRENDERSTATE_SPECULARENABLE呈现状态分别支持D3DCOLOR_MONO和D3DCOLOR_RGB颜色模型的反射高光。
D3DPSHADECAPS_SPECULARPHONGMONO D3DPSHADECAPS_SPECULARPHONGRGB 设备可以通过D3DCOLOR_MONO D3DCOLOR_MONO和D3DCOLOR_RGB颜色模型中的D3DRENDERSTATE_SPECULARENABLE呈现状态支持反射高光。 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 设备能够支持多维数据集环境映射。
D3DPTEXTURECAPS_PERSPECTIVE 支持透视更正。 请参阅 DirectX SDK 文档中的D3DRENDERSTATE_TEXTUREPERSPECTIVE。
D3DPTEXTURECAPS_POW2 在典型情况下,设备要求纹理的宽度和高度指定为 2 的幂。 此要求不适用于多维数据集纹理或卷纹理。 如果设置了此标志,则也可能设置D3DPTEXTURECAPS_NONPOW2CONDITIONAL标志。
D3DPTEXTURECAPS_PROJECTED 设备可以将转换的纹理坐标除以 COUNTth 纹理坐标。 换句话说,设备可以执行D3DTTFF_PROJECTED。 请参阅 DirectX SDK 文档中D3DTEXTURETRANSFORMFLAGS。
D3DPTEXTURECAPS_NONPOW2CONDITIONAL 有条件地支持使用二维(2D)纹理(即卷或立方体纹理),其维度不是 2 的幂。 如果满足以下所有要求,公开此功能的设备可以使用此类纹理。
  • 纹理阶段的纹理寻址模式设置为D3DTADDRESS_CLAMP。
  • 纹理阶段的纹理包装被禁用(D3DRS_WRAPn设置为 0)。
  • Mipmapping 未使用(仅使用放大筛选器)。
  • 纹理未存储在 DXT1-5(压缩纹理格式)中。
公开此功能的设备驱动程序不能使用此类纹理执行依赖纹理读取。 也就是说,使用 着色器代码 计算的纹理坐标无法对此类纹理进行寻址或采样。 换句话说,无法在基于着色器计算(如 bem、beml 或 texm3x3 指令)的像素着色器着色器版本 1.0-1.3 中读取的阶段设置此类纹理。 例如,这些纹理可用于存储驱动程序提供给纹理读取的凹凸贴图数据,但不能存储在 texbem、texbeml 或 texm3x3spec 中使用的环境映射。 如果设置了此标志,则还必须设置D3DPTEXTURECAPS_POW2标志。
D3DPTEXTURECAPS_SQUAREONLY 所有纹理都必须是正方形的。
D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE 在内插之前,纹理索引不会按纹理大小缩放。
D3DPTEXTURECAPS_TEXTURETRANSFORM 设备能够执行纹理转换。
D3DPTEXTURECAPS_TRANSPARENCY 支持纹理透明度。 (仅绘制不是当前透明颜色的纹素。

dwTextureFilterCaps

指定纹理映射功能。 此成员可以是以下一个或多个成员:

价值 意义
D3DPTFILTERCAPS_LINEAR 支持双线性筛选。 使用所需像素周围的纹素面积的 2 乘 2 的加权平均值。 这适用于放大和缩小。如果支持放大或缩小,则必须同时支持两者。
D3DPTFILTERCAPS_LINEARMIPLINEAR 支持 MIP 映射之间的三线性内插。 对两个最近的 MIP 映射执行双线性筛选,然后在两种颜色之间线性内插以确定最终颜色。
D3DPTFILTERCAPS_LINEARMIPNEAREST 支持两个点采样 MIP 映射之间的线性内插。 从两个最近的 MIP 映射级别中选择最接近的纹素,然后在它们之间执行线性内插。
D3DPTFILTERCAPS_MAGFAFLATCUBIC 支持用于放大纹理的按阶段平面立方筛选。 平面立方放大筛选器由D3DTEXTUREMAGFILTER枚举的D3DTFG_FLATCUBIC成员表示。
D3DPTFILTERCAPS_MAGFANISOTROPIC 支持用于放大纹理的按阶段异性筛选。 异性放大筛选器由D3DTEXTUREMAGFILTER枚举的D3DTFG_ANISOTROPIC成员表示。
D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 支持用于放大纹理的按阶段高斯-立方筛选。 高斯立方放大筛选器由D3DTEXTUREMAGFILTER枚举D3DTFG_GAUSSIANCUBIC成员表示。
D3DPTFILTERCAPS_MAGFLINEAR 支持用于放大纹理的按阶段双线性内插筛选。 双线性内插放大筛选器由D3DTEXTUREMAGFILTER枚举的D3DTFG_LINEAR成员表示。 指定支持放大筛选器上的双线性筛选。
D3DPTFILTERCAPS_MAGFPOINT 支持用于放大纹理的按阶段点采样筛选。 点样本放大筛选器由D3DTEXTUREMAGFILTER枚举D3DTFG_POINT成员表示。
D3DPTFILTERCAPS_MINFANISOTROPIC 支持用于缩小纹理的每阶段异性筛选。 异性缩小筛选器由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 支持装饰纹理混合模式(从D3DTEXTUREBLEND枚举类型D3DTBLEND_DECAL)。
D3DPTBLENDCAPS_DECALALPHA 支持 Decal-alpha 纹理混合模式(D3DTEXTUREBLEND枚举类型中的D3DTBLEND_DECALALPHA)。
D3DPTBLENDCAPS_DECALMASK 支持贴面纹理混合模式(从D3DTEXTUREBLEND枚举类型D3DTBLEND_DECALMASK)。
D3DPTBLENDCAPS_MODULATE 支持调节纹理混合模式(从D3DTEXTUREBLEND枚举类型D3DTBLEND_MODULATE)。
D3DPTBLENDCAPS_MODULATEALPHA 支持调节 alpha 纹理混合模式(从D3DTEXTUREBLEND枚举类型D3DTBLEND_MODULATEALPHA)。
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

指定支持的存根的最大宽度和高度(最多 32 到 32)。

言论

此结构已替换为 D3DCAPS8(请参阅 DirectX 8.0 SDK 文档),了解 DirectX 8.0 及更高版本的运行时,但 DirectX 7.0 和更早的运行时兼容性是必需的。 有关详细信息,请参阅 报告 DirectX 8.0 样式 Direct3D 功能

创建设备时以及查询设备的功能时,将使用此结构。 它在 D3DDEVICEDESC_V1 结构中定义多个成员。

要求

要求 价值
标头 d3dcaps.h (包括 D3dcaps.h)

另请参阅

D3DDEVICEDESC_V1