Microsoft DirectX 8.0 (Visual Basic)

CONST_D3DSTATEBLOCKTYPE

デバイス ステートの論理グループを定義する。

Enum CONST_D3DSTATEBLOCKTYPE
    D3DSBT_ALL         = 1
    D3DSBT_PIXELSTATE  = 2
    D3DSBT_VERTEXSTATE = 3
End Enum

定数

D3DSBT_ALL
すべてのデバイス ステートを取り込む。
現在のすべてのレンダリング ステート 現在のすべてのクリップ面
現在のすべてのテクスチャ ステージ ステート 現在のマテリアル
現在のすべてのテクスチャ 現在のすべてのライトおよび有効なライト パラメータ
現在のパレット 現在のピクセル シェーダ
現在のすべてのストリーム 現在のピクセル シェーダ定数
現在のビューポート 現在の頂点シェーダ
現在のすべてのトランスフォーム 現在の頂点シェーダ定数

D3DSBT_PIXELSTATE
次のすべてのピクセル関連デバイス ステートを取り込む。

レンダリング ステート
D3DRS_ALPHABLENDENABLE D3DRS_ALPHAFUNC
D3DRS_ALPHAREF D3DRS_ALPHATESTENABLE
D3DRS_BLENDOP D3DRS_COLORWRITEENABLE
D3DRS_DESTBLEND D3DRS_DITHERENABLE
D3DRS_EDGEANTIALIAS D3DRS_FILLMODE
D3DRS_FOGDENSITY D3DRS_FOGEND
D3DRS_FOGSTART D3DRS_LASTPIXEL
D3DRS_LINEPATTERN D3DRS_SHADEMODE
D3DRS_SRCBLEND D3DRS_STENCILENABLE
D3DRS_STENCILFAIL D3DRS_STENCILFUNC
D3DRS_STENCILMASK D3DRS_STENCILPASS
D3DRS_STENCILREF D3DRS_STENCILWRITEMASK
D3DRS_STENCILZFAIL D3DRS_TEXTUREFACTOR
D3DRS_WRAP0 through D3DRS_WRAP7 D3DRS_ZBIAS
D3DRS_ZENABLE D3DRS_ZFUNC
D3DRS_ZWRITEENABLE  

テクスチャ ステージ ステート
D3DTSS_ADDRESSU D3DTSS_ADDRESSV
D3DTSS_ADDRESSW D3DTSS_ALPHAARG0
D3DTSS_ALPHAARG1 D3DTSS_ALPHAARG2
D3DTSS_ALPHAOP D3DTSS_BORDERCOLOR
D3DTSS_BUMPENVLOFFSET D3DTSS_BUMPENVLSCALE
D3DTSS_BUMPENVMAT00 D3DTSS_BUMPENVMAT01
D3DTSS_BUMPENVMAT10 D3DTSS_BUMPENVMAT11
D3DTSS_COLORARG0 D3DTSS_COLORARG1
D3DTSS_COLORARG2 D3DTSS_COLOROP
D3DTSS_MAGFILTER D3DTSS_MAXANISOTROPY
D3DTSS_MAXMIPLEVEL D3DTSS_MINFILTER
D3DTSS_MIPFILTER D3DTSS_MIPMAPLODBIAS
D3DTSS_RESULTARG D3DTSS_TEXCOORDINDEX
D3DTSS_TEXTURETRANSFORMFLAGS  

D3DSBT_VERTEXSTATE
現在のすべてのライト、現在の頂点シェーダと頂点シェーダ定数、および D3DTSS_TEXCOORDINDEX と D3DTSS_TEXTURETRANSFORMFLAGS で指定されるテクスチャ ステージ ステートを取り込む。また、D3DSBT_VERTEXSTATE は、次のすべての頂点関連デバイス ステートを取り込む。

レンダリング ステート
D3DRS_AMBIENT D3DRS_AMBIENTMATERIALSOURCE
D3DRS_CLIPPING D3DRS_CLIPPLANEENABLE
D3DRS_COLORVERTEX D3DRS_DIFFUSEMATERIALSOURCE
D3DRS_EMISSIVEMATERIALSOURCE D3DRS_FOGDENSITY
D3DRS_FOGEND D3DRS_FOGSTART
D3DRS_FOGTABLEMODE D3DRS_FOGVERTEXMODE
D3DRS_INDEXVERTEXBLENDENABLE D3DRS_LIGHTING
D3DRS_LOCALVIEWER D3DRS_MULTISAMPLEANTIALIAS
D3DRS_MULTISAMPLEMASK D3DRS_NORMALIZENORMALS
D3DRS_PATCHEDGESTYLE D3DRS_PATCHSEGMENTS
D3DRS_POINTSCALE_A D3DRS_POINTSCALE_B
D3DRS_POINTSCALE_C D3DRS_POINTSCALEENABLE
D3DRS_POINTSIZE D3DRS_POINTSIZE_MAX
D3DRS_POINTSIZE_MIN D3DRS_POINTSPRITEENABLE
D3DRS_RANGEFOGENABLE D3DRS_SOFTWAREVERTEXPROCESSING
D3DRS_SPECULARMATERIALSOURCE D3DRS_TWEENFACTOR
D3DRS_VERTEXBLEND  

注意

D3DSBT_PIXELSTATE と D3DSBT_VERTEXSTATE はデバイス ステートの異なる論理グループを示しているが、ステートによっては両方のグループに共通するものもある。D3DSBT_PIXELSTATE および D3DSBT_VERTEXSTATE の組み合わせは D3DSBT_ALL と同等ではない。D3DSBT_PIXELSTATE および D3DSBT_VERTEXSTATE 値を使用することで、Direct3Ddevice8.DrawPrimitive の呼び出しの間に頻繁に変更されるステートを取り込むことができ、ステート全体を取り込むことによるパフォーマンスへの悪影響はない。

参照

Direct3DDevice8.CreateStateBlock