Partilhar via


Funcionalidades necessárias do Direct3D 9

Para que os aplicativos acessem totalmente os recursos das versões 9_1, 9_2 e 9_3 do Microsoft Direct3D, o driver de modo de usuário deve expor determinadas funcionalidades de hardware. Esses recursos são expressos em termos da estrutura de D3DCAPS9 retornada pela função GetCaps do driver de modo de usuário. Para indicar o suporte dos recursos, o driver deve definir esses membros de D3DCAPS9 como um OR bit a bit de todos os respectivos valores de sinalizador:

Funcionalidades mínimas para o nível 9_1 do Direct3D

membro D3DCAPS9 Valor de sinalizador
Caps2

D3DCAPS2_DYNAMICTEXTURES

D3DCAPS2_FULLSCREENGAMMA

Presentationintervals

D3DPRESENT_INTERVAL_IMMEDIATE

D3DPRESENT_INTERVAL_ONE

PrimitiveMiscCaps

D3DPMISCCAPS_COLORWRITEENABLE

Shadecaps

D3DPSHADECAPS_ALPHAGOURAUDBLEND

D3DPSHADECAPS_COLORGOURAUDRGB

D3DPSHADECAPS_FOGGOURAUD

D3DPSHADECAPS_SPECULARGOURAUDRGB

TextureFilterCaps

D3DPTFILTERCAPS_MINFLINEAR

D3DPTFILTERCAPS_MINFPOINT

D3DPTFILTERCAPS_MAGFLINEAR

D3DPTFILTERCAPS_MAGFPOINT

Texturecaps

(Consulte Observação.)

D3DPTEXTURECAPS_ALPHA

D3DPTEXTURECAPS_CUBEMAP

D3DPTEXTURECAPS_MIPMAP

D3DPTEXTURECAPS_PERSPECTIVE

TextureAddressCaps

D3DPTADDRESSCAPS_CLAMP

D3DPTADDRESSCAPS_INDEPENDENTUV

D3DPTADDRESSCAPS_MIRROR

D3DPTADDRESSCAPS_WRAP

TextureOpCaps

D3DTEXOPCAPS_DISABLE

D3DTEXOPCAPS_MODULATE

D3DTEXOPCAPS_SELECTARG1

D3DTEXOPCAPS_SELECTARG2

SrcBlendCaps

D3DPBLENDCAPS_INVDESTALPHA

D3DPBLENDCAPS_INVDESTCOLOR

D3DPBLENDCAPS_INVSRCALPHA

D3DPBLENDCAPS_ONE

D3DPBLENDCAPS_SRCALPHA

D3DPBLENDCAPS_ZERO

DestBlendCaps

D3DPBLENDCAPS_ONE

D3DPBLENDCAPS_INVSRCALPHA

D3DPBLENDCAPS_INVSRCCOLOR

D3DPBLENDCAPS_SRCALPHA

D3DPBLENDCAPS_ZERO

StretchRectFilterCaps

D3DPTFILTERCAPS_MAGFLINEAR

D3DPTFILTERCAPS_MAGFPOINT

D3DPTFILTERCAPS_MINFLINEAR

D3DPTFILTERCAPS_MINFPOINT

ZCmpCaps

D3DPCMPCAPS_ALWAYS

D3DPCMPCAPS_LESSEQUAL

Rastercaps

D3DPRASTERCAPS_DEPTHBIAS

D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS

Stencilcaps

D3DSTENCILCAPS_TWOSIDED

MaxTextureWidth

2.048

MaxTextureHeight

2.048

NumSimultaneousRTs

1

Maxsimultaneoustextures

8

Maxtextureblendstages

8

PixelShaderVersion

D3DPS_VERSION(2,0)

MaxPrimitiveCount

65535

MaxVertexIndex

65534

MaxVolumeExtent

256

MaxTextureRepeat

Deve ser zero, ou 128 ou maior.

MaxAnisotropy

2

MaxVertexW

0.f

Nota Esses requisitos também se aplicam:

  • O driver também deve definir o membro TextureCaps como um valor de D3DPTEXTURECAPS_NONPOW2CONDITIONAL e D3DPTEXTURECAPS_POW2 ou como nenhum deles.
  • Quando o driver responde a um evento, em que D3DDDIARG_CREATEQUERY. QueryType é D3DDDIQUERYTYPE_EVENT, ele sempre deve definir o valor BOOL do evento como TRUE ao responder. Consulte CreateQuery e D3DDDIARG_CREATEQUERY.

Funcionalidades mínimas para o nível 9_2 do Direct3D

Esses recursos devem ser definidos além daqueles listados para o nível 9_1 do Direct3D.

membro D3DCAPS9 Valor de sinalizador
PrimitiveMiscCaps

D3DPMISCCAPS_SEPARATEALPHABLEND

DevCaps2

D3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET

TextureAddressCaps

D3DPTADDRESSCAPS_MIRRORONCE

VolumeTextureAddressCaps

D3DPTADDRESSCAPS_MIRRORONCE

MaxTextureWidth

2.048

MaxTextureHeight

2.048

MaxTextureRepeat

Deve ser zero, ou 2048 ou maior.

VertexShaderVersion

D3DVS_VERSION(2,0)

MaxAnisotropy

16

MaxPrimitiveCount

1048575

MaxVertexIndex

1048575

MaxVertexW

100000000000.f

Nota Esse requisito também se aplica:

  • Quando o driver responde a uma consulta z-testing, em que D3DDDIARG_CREATEQUERY. QueryType é D3DDDIQUERYTYPE_OCCLUSION, deve sempre definir o valor UINT da consulta como um valor diferente de zero ao responder. Consulte CreateQuery e D3DDDIARG_CREATEQUERY.

Funcionalidades mínimas para o nível 9_3 do Direct3D

Esses recursos devem ser definidos além daqueles listados para os níveis 9_1 e 9_2 do Direct3D.

membro D3DCAPS9 Valor de sinalizador
PS20Caps-Caps>

D3DPS20CAPS_GRADIENTINSTRUCTIONS

PrimitiveMiscCaps

D3DPMISCCAPS_INDEPENDENTWRITEMASKS

D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING

TextureAddressCaps

D3DPTADDRESSCAPS_BORDER

MaxTextureWidth

4096

MaxTextureHeight

4096

MaxTextureRepeat

Deve ser zero, ou 8192 ou maior.

NumSimultaneousRTs

4

PS20Caps-NumInstructionSlots>

512 (Sombreador de Pixel versão 2b)

PS20Caps-NumTemps>

32 (Sombreador de Pixel versão 2b)

VS20Caps-NumTemps>

32 (Sombreador de Vértice Versão 2a)

MaxVertexShaderConst

256 (Sombreador de Vértice Versão 2a)

VertexShaderVersion

D3DVS_VERSION(3,0) (Consulte Observação.)

Nota O valor VertexShaderVersion de D3DVS_VERSION(3,0) garante o suporte à instanciação. O Direct3D 10Level 9 não expõe o Modelo de Sombreador 3.0.