Microsoft DirectX 8.0 (Visual Basic)

CONST_D3DRENDERSTATETYPE

デバイスのレンダリング ステートを定義する。

Enum CONST_D3DRENDERSTATETYPE
    D3DRS_ZENABLE                  =   7
    D3DRS_FILLMODE                 =   8
    D3DRS_SHADEMODE                =   9
    D3DRS_LINEPATTERN              =  10
    D3DRS_ZWRITEENABLE             =  14
    D3DRS_ALPHATESTENABLE          =  15
    D3DRS_LASTPIXEL                =  16 (&H10)
    D3DRS_SRCBLEND                 =  19 (&H13)
    D3DRS_DESTBLEND                =  20 (&H14)
    D3DRS_CULLMODE                 =  22 (&H16)
    D3DRS_ZFUNC                    =  23 (&H17)
    D3DRS_ALPHAREF                 =  24 (&H18)
    D3DRS_ALPHAFUNC                =  25 (&H19)
    D3DRS_DITHERENABLE             =  26 (&H1A)
    D3DRS_ALPHABLENDENABLE         =  27 (&H1B)
    D3DRS_FOGENABLE                =  28 (&H1C)
    D3DRS_SPECULARENABLE           =  29 (&H1D)
    D3DRS_ZVISIBLE                 =  30 (&H1E)
    D3DRS_FOGCOLOR                 =  34 (&H22)
    D3DRS_FOGTABLEMODE             =  35 (&H23)
    D3DRS_FOGSTART                 =  36 (&H24)
    D3DRS_FOGEND                   =  37 (&H25)
    D3DRS_FOGDENSITY               =  38 (&H26)
    D3DRS_EDGEANTIALIAS            =  40 (&H28)
    D3DRS_ZBIAS                    =  47 (&H2F)
    D3DRS_RANGEFOGENABLE           =  48 (&H30)
    D3DRS_STENCILENABLE            =  52 (&H34)
    D3DRS_STENCILFAIL              =  53 (&H35)
    D3DRS_STENCILZFAIL             =  54 (&H36)
    D3DRS_STENCILPASS              =  55 (&H37)
    D3DRS_STENCILFUNC              =  56 (&H38)
    D3DRS_STENCILREF               =  57 (&H39)
    D3DRS_STENCILMASK              =  58 (&H3A)
    D3DRS_STENCILWRITEMASK         =  59 (&H3B)
    D3DRS_TEXTUREFACTOR            =  60 (&H3C)
    D3DRS_WRAP0                    = 128 (&H80)
    D3DRS_WRAP1                    = 129 (&H81)
    D3DRS_WRAP2                    = 130 (&H82)
    D3DRS_WRAP3                    = 131 (&H83)
    D3DRS_WRAP4                    = 132 (&H84)
    D3DRS_WRAP5                    = 133 (&H85)
    D3DRS_WRAP6                    = 134 (&H86)
    D3DRS_WRAP7                    = 135 (&H87)
    D3DRS_CLIPPING                 = 136 (&H88)
    D3DRS_LIGHTING                 = 137 (&H89)
    D3DRS_AMBIENT                  = 139 (&H8B)
    D3DRS_FOGVERTEXMODE            = 140 (&H8C)
    D3DRS_COLORVERTEX              = 141 (&H8D)
    D3DRS_LOCALVIEWER              = 142 (&H8E)
    D3DRS_NORMALIZENORMALS         = 143 (&H8F)
    D3DRS_DIFFUSEMATERIALSOURCE    = 145 (&H91)
    D3DRS_SPECULARMATERIALSOURCE   = 146 (&H92)
    D3DRS_AMBIENTMATERIALSOURCE    = 147 (&H93)
    D3DRS_EMISSIVEMATERIALSOURCE   = 148 (&H94)
    D3DRS_VERTEXBLEND              = 151 (&H97)
    D3DRS_CLIPPLANEENABLE          = 152 (&H98)
    D3DRS_SOFTWAREVERTEXPROCESSING = 153 (&H99)
    D3DRS_POINTSIZE                = 154 (&H9A)
    D3DRS_POINTSIZE_MIN            = 155 (&H9B)
    D3DRS_POINTSPRITEENABLE        = 156 (&H9C)
    D3DRS_POINTSCALEENABLE         = 157 (&H9D)
    D3DRS_POINTSCALE_A             = 158 (&H9E)
    D3DRS_POINTSCALE_B             = 159 (&H9F)
    D3DRS_POINTSCALE_C             = 160 (&HA0)
    D3DRS_MULTISAMPLEANTIALIAS     = 161 (&HA1)
    D3DRS_MULTISAMPLEMASK          = 162 (&HA2)
    D3DRS_PATCHEDGESTYLE           = 163 (&HA3)
    D3DRS_PATCHSEGMENTS            = 164 (&HA4)
    D3DRS_DEBUGMONITORTOKEN        = 165 (&HA5)
    D3DRS_POINTSIZE_MAX            = 166 (&HA6)
    D3DRS_INDEXVERTEXBLENDENABLE   = 167 (&HA7)
    D3DRS_COLORWRITEENABLE         = 168 (&HA8)
    D3DRS_TWEENFACTOR              = 170 (&HAA)
    D3DRS_BLENDOP                  = 171 (&HAB)
End Enum

定数

D3DRS_ZENABLE
CONST_D3DZBUFFERTYPE 列挙のいずれかのメンバで指定する深度バッファ ステート。z バッファリングを有効にするには D3DZB_TRUE、w バッファリングを有効にするには D3DZB_USEW、深度バッファリングを無効にするには D3DZB_FALSE を、それぞれ設定する。

このレンダリング ステートのデフォルト値は、D3DPRESENT_PARAMETERS 構造体の EnableAutoDepthStencil メンバに TRUE を設定してスワップ チェーンと共に深度ステンシルが作成されている場合は D3DZB_TRUE である。そうでない場合は D3DZB_FALSE がデフォルト値になる。

D3DRS_FILLMODE
CONST_D3DFILLMODE 列挙の 1 つ以上のメンバ。デフォルト値は D3DFILL_SOLID である。
D3DRS_SHADEMODE
CONST_D3DSHADEMODE 列挙の 1 つ以上のメンバ。デフォルト値は D3DSHADE_GOURAUD である。
D3DRS_LINEPATTERN
D3DLINEPATTERN 型。デフォルト値は wRepeatPattern が 0 で、wLinePattern が 0 である。
D3DRS_ZWRITEENABLE
アプリケーションによる深度バッファへの書き込みを有効にするには、TRUE を設定する。デフォルト値は TRUE である。アプリケーションはこのメンバを利用することにより、システムが新しい深度値で深度バッファを更新してしまうのを防ぐことができる。FALSE の場合は、レンダリング ステート D3DRS_ZFUNC (深度バッファリングが行われていると仮定) に従って深度比較が実行されるが、深度値はバッファに書き込まれない。
D3DRS_ALPHATESTENABLE
アルファ テストを有効にするには、TRUE を設定する。デフォルト値は FALSE である。このメンバを使用すると、アルファ値に基づいてピクセルを受け取るか拒否するかを判断するテストをオフにできる。

入ってくるアルファ値は、D3DRS_ALPHAFUNC レンダリング ステートにより提供される比較関数を用いて参照アルファ値と比較される。このモードを有効にすると、テストが成功した場合に限りアルファ ブレンディングが行われる。

D3DRS_LASTPIXEL
直線や三角形の最後のピクセルの描画を有効にするには、FALSE を設定する。デフォルト値は TRUE である。
D3DRS_SRCBLEND
CONST_D3DBLEND 列挙のいずれかのメンバ。デフォルト値は D3DBLEND_ONE である。
D3DRS_DESTBLEND
CONST_D3DBLEND 列挙のいずれかのメンバ。デフォルト値は D3DBLEND_ZERO である。
D3DRS_CULLMODE
背面の三角形をカリングする場合に、その方法を指定する。CONST_D3DCULL 列挙型のメンバのいずれかを設定できる。デフォルト値は D3DCULL_CCW である。
D3DRS_ZFUNC
CONST_D3DCMPFUNC 列挙のいずれかのメンバ。デフォルト値は D3DCMP_LESSEQUAL である。このメンバは、アプリケーションにカメラからの距離を基準とするピクセルの受け取りや受け取り拒否を許可する。

ピクセルの深度値を深度バッファの値と比較する。ピクセルの深度値が比較関数で許可された場合、ピクセルが書き込まれる。

深度値が深度バッファに書き込まれるのは、レンダリング ステートが TRUE の場合だけである。

この深度テストに失敗した方が、ソフトウェアによるラスタ化や多くのハードウェア アクセラレータの処理は速くなる。これは、ピクセルのレンダリング処理を行わない場合には、テクスチャをフィルタ処理したり乗算したりする必要がなくなるためである。

D3DRS_ALPHAREF
アルファ テストが有効に設定されている場合に、ピクセルをテストするための基準アルファ値を指定する値。0 から 1 の範囲の 16:16 固定小数点値を指定できる (1.0 は &H00010000 と表される)。デフォルト値は 0.0 である。
D3DRS_ALPHAFUNC
CONST_D3DCMPFUNC 列挙のいずれかのメンバ。デフォルト値は D3DCMP_ALWAYS である。このメンバは、アプリケーションにアルファ値を基準とするピクセルの受け取りや受け取り拒否を許可する。
D3DRS_DITHERENABLE
ディザリングを有効にするには、TRUE を設定する。デフォルト値は FALSE である。
D3DRS_ALPHABLENDENABLE
アルファ ブレンドによる透明化を有効にするには、TRUE を設定する。デフォルト値は FALSE である。

アルファ ブレンディングのタイプは、D3DRS_SRCBLEND と D3DRS_DESTBLEND のレンダリング ステートによって決定される。

D3DRS_FOGENABLE
フォグ ブレンディングを有効にするには、TRUE を設定する。デフォルト値は FALSE である。
D3DRS_SPECULARENABLE
スペキュラ ハイライトを有効にするには、TRUE を設定する。デフォルト値は FALSE である。

スペキュラ ハイライトは、光の当たっているオブジェクトの各頂点がそのオブジェクトの原点にあるかのように算出される。これによって、オブジェクトが原点の周囲でモデル化され、光源とオブジェクト間の距離が比較的大きい場合に限り、結果を予測することができる。

このメンバに TRUE を設定すると、テクスチャ カスケード後、アルファ ブレンディング前に、ベース カラーにスペキュラ色が追加される。

D3DRS_ZVISIBLE
サポートされていない。
D3DRS_FOGCOLOR
RGB 色を示す Long 型の値。デフォルト値は 0 である。
D3DRS_FOGTABLEMODE
ピクセル フォグに使用されるフォグ式。CONST_D3DFOGMODE 列挙のいずれかのメンバを設定する。デフォルト値は D3DFOG_NONE である。
D3DRS_FOGSTART
線形フォグ モードで、ピクセルまたは頂点フォグ エフェクトが開始する深度。深度は、頂点フォグの場合はワールド空間で、ピクセル フォグの場合はデバイス空間 [0.0, 1.0] またはワールド空間のいずれかで指定する。ピクセル フォグでは、フォグ計算に Z が使用される場合、これらの値はデバイス空間にあり、視点との相対フォグ (W フォグ) が使用される場合はワールド空間にある。
D3DRS_FOGEND
線形フォグ モードで、ピクセルまたは頂点フォグ エフェクトが終了する深度。深度は、頂点フォグの場合はワールド空間で、ピクセル フォグの場合はデバイス空間 [0.0, 1.0] またはワールド空間のいずれかで指定する。ピクセル フォグでは、フォグ計算に Z が使用される場合、これらの値はデバイス空間にあり、視点との相対フォグ (W フォグ) が使用される場合はワールド空間にある。
D3DRS_FOGDENSITY
指数フォグ モード (D3DFOG_EXP および D3DFOG_EXP2) で使用するピクセルまたは頂点フォグのフォグ密度。密度の有効な値は 0.0 から 1.0 の範囲内である。デフォルト値は 1.0 である。
D3DRS_EDGEANTIALIAS
オブジェクトの凸面の輪郭を形成する線をアンチエイリアスするには、TRUE を設定する。デフォルト値は FALSE である。TRUE の場合、アプリケーションでは、直線のみレンダリングし、またシーン内のポリゴンの外辺に対してのみレンダリングすることが望ましい。このレンダリング ステートが設定されていて、三角形またはポイントが描画されると、その動作は不定である。アンチエイリアシングは、隣接ピクセルの値の平均値をとることによって実行される。この方法は、アンチエイリアシングの実行方法としてこれは最善ではないが、効率的ではある。この種の処理をサポートするハードウェアは普及しつつある。

エッジ アンチエイリアシングは、D3DPRASTERCAPS_ANTIALIASEDGES 能力を公開するデバイスに限り、有効にすることができる。

D3DRS_ZBIAS
0 〜 16 の範囲の整数値であり、物理的に同一の面にあるポリゴンを分離して見えるようにする。描画順序のソーティングを行わなくても、高い Z バイアス値を持つポリゴンは、低い値を持つポリゴンよりも手前に見える。たとえば、値が 1 のポリゴンは、値が 0 のポリゴンより手前に見える。デフォルト値は 0 である。
D3DRS_RANGEFOGENABLE
範囲ベースの頂点フォグを有効にするには、TRUE を設定する。デフォルト値は FALSE で、システムは深度ベースのフォグを使用する。範囲ベースのフォグでは、シーンにおけるオブジェクトの深度 (z 座標) ではなく、ビューアからのオブジェクトの距離でフォグ エフェクトを計算する。範囲ベースのフォグでは、通常のすべてのフォグ メソッドが機能するが、深度ではなく範囲を使って計算を行うポイントだけが異なる。

範囲はフォグ計算に使用する適切な要素であるが、範囲は計算のポイントで負荷が高く、深度は通常計算済みなので、代わりに深度が広く使われる。深度を使用してフォグを計算すると、周辺オブジェクトのフォグ エフェクトが視点の移動と共に変化するという好ましくない影響が出る。この場合、深度は変化するが範囲は一定のままである。

現在のところ、ピクセル単位の範囲ベースのフォグをサポートするハードウェアは存在しないため、範囲補正は頂点フォグでのみ行われる。

D3DRS_STENCILENABLE
ステンシル処理を有効にするには TRUE を設定し、ステンシル処理を無効にするには FALSE を設定する。デフォルト値は FALSE である。
D3DRS_STENCILFAIL
ステンシル テストに失敗したときに実行するステンシル処理。CONST_D3DSTENCILOP 列挙のいずれかのメンバを指定できる。デフォルト値は D3DSTENCILOP_KEEP である。
D3DRS_STENCILZFAIL
ステンシル テストにパスし、深度テスト (Z テスト) に失敗した場合に実行するステンシル処理。CONST_D3DSTENCILOP 列挙のいずれかのメンバを指定できる。デフォルト値は D3DSTENCILOP_KEEP である。
D3DRS_STENCILPASS
ステンシル テストおよび深度 (Z) テストの両方にパスした場合に実行するステンシル処理。CONST_D3DSTENCILOP 列挙のいずれかのメンバを指定できる。デフォルト値は D3DSTENCILOP_KEEP である。
D3DRS_STENCILFUNC
ステンシル テストのための比較関数。CONST_D3DCMPFUNC 列挙のいずれかのメンバを指定できる。デフォルト値は D3DCMP_ALWAYS である。

比較関数は、ステンシル バッファの要素を基準値と比較するために使われる。この比較は、基準値のビット、およびステンシル マスク (D3DRS_STENCILMASK レンダリング ステートにより設定) に設定されたステンシル バッファ要素にのみ適用される。TRUE の場合、ステンシル テストは成功である。

D3DRS_STENCILREF
ステンシル テストのための基準整数値。デフォルト値は 0 である。
D3DRS_STENCILMASK
基準値および各ステンシル バッファ要素に適用し、ステンシル テストのための有効ビットを決定するマスク。デフォルトのマスクは &HFFFFFFFF である。
D3DRS_STENCILWRITEMASK
基準値および各ステンシル バッファ要素に適用し、ステンシル テストのための有効ビットを決定するマスク。デフォルトのマスクは &HFFFFFFFF である。
D3DRS_TEXTUREFACTOR
D3DTA_TFACTOR テクスチャ ブレンディング引数または D3DTOP_BLENDFACTORALPHA テクスチャ ブレンディング処理によるマルチテクスチャ ブレンディングで使用される色。
D3DRS_WRAP0 〜 D3DRS_WRAP7
複数のテクスチャ座標セットに対するテクスチャ ラッピング動作。これらのレンダリング ステートの有効値としては、CONST_D3DWRAPFLAGS 列挙で定義されている D3DWRAPCOORD_0 (または D3DWRAP_U)、D3DWRAPCOORD_1 (または D3DWRAP_V)、D3DWRAPCOORD_2 (または D3DWRAP_W)、および D3DWRAPCOORD_3 の各フラグの任意の組み合わせを指定できる。これらの値を設定すると、指定されたテクスチャに対して第一、第二、第三、第四ディメンジョンの方向 (s、t、r、および q 方向と呼ばれる場合もある) のラッピングが実行される。デフォルト値は 0 (すべての方向でラッピング無効) である。
D3DRS_CLIPPING
Microsoft® Direct3D® によるプリミティブのクリッピングを有効にするには TRUE、無効にするには FALSE を設定する。デフォルト値は TRUE である。
D3DRS_LIGHTING
Direct3D のライティングを有効にするには TRUE、無効にするには FALSE を設定する。デフォルト値は TRUE である。頂点法線を含む頂点のみ正しくライトが当てられ、法線を含まない頂点ではすべてのライティング計算で 0 の内積が使用される。
D3DRS_AMBIENT
アンビエント ライトの色。デフォルト値は 0 である。
D3DRS_FOGVERTEXMODE
頂点フォグで使われるフォグ式。CONST_D3DFOGMODE 列挙のいずれかのメンバに設定する。デフォルト値は D3DFOG_NONE である。このレンダリング ステートは、従来の D3DLIGHTSTATE_FOGVERTEXMODE ライティング ステートに類似する。
D3DRS_COLORVERTEX
頂点単位のカラーを有効にするには TRUE、無効にするには FALSE を設定する。デフォルト値は TRUE である。頂点単位のカラーを有効にすると、各頂点に定義された色をライティング計算で使用することができる。

詳細については、以下のレンダリング ステートを参照すること。

D3DRS_LOCALVIEWER
カメラとの相対角度に依存したスペキュラ ハイライトを有効にするには TRUE を設定し、正スペキュラ ハイライトを使用するには FALSE を設定する。デフォルト値は TRUE である。正射影を使用するアプリケーションでは FALSE を指定すること。
D3DRS_NORMALIZENORMALS
頂点法線の自動正規化を有効にするには TRUE、無効にするには FALSE を設定する。デフォルト値は FALSE である。この機能を有効にすると、頂点がカメラ空間にトランスフォームされた後で頂点法線が正規化されるが、計算負荷が大きい。
D3DRS_DIFFUSEMATERIALSOURCE
ライティング計算に使用されるディフューズ色のソース。有効な値は、CONST_D3DMATERIALCOLORSOURCE 列挙のメンバである。デフォルト値は D3DMCS_COLOR1 である。このレンダリング ステートの値が使用されるのは、D3DRS_COLORVERTEX レンダリング ステートが TRUE に設定されている場合だけである。
D3DRS_SPECULARMATERIALSOURCE
ライティング計算に使用されるスペキュラ色のソース。有効値は CONST_D3DMATERIALCOLORSOURCE 列挙のメンバである。デフォルト値は D3DMCS_COLOR2 である。
D3DRS_AMBIENTMATERIALSOURCE
ライティング計算に使用されるアンビエント色のソース。有効値は CONST_D3DMATERIALCOLORSOURCE 列挙のメンバである。デフォルト値は D3DMCS_COLOR2 である。
D3DRS_EMISSIVEMATERIALSOURCE
ライティング計算に使用されるエミッション色のソース。有効値は CONST_D3DMATERIALCOLORSOURCE 列挙のメンバである。デフォルト値は D3DMCS_MATERIAL である。
D3DRS_VERTEXBLEND
ジオメトリがある場合、ジオメトリ ブレンディングを実行するために使用する行列の個数。有効な値は、CONST_D3DVERTEXBLENDFLAGS 列挙のメンバ。デフォルト値は D3DVBF_DISABLE である。
D3DRS_CLIPPLANEENABLE
ユーザー定義のクリップ面を有効または無効にする。有効な値は、CONST_D3DCLIPPLANEFLAGS 列挙の値の組み合わせ。列挙の値を指定すると、対応するクリップ面が有効になる。値を指定しないと、クリップ面は無効になる。デフォルト値は D3DCPF_DISABLEALL である。
D3DRS_SOFTWAREVERTEXPROCESSING
ハードウェア頂点処理またはソフトウェア頂点処理の設定をアプリケーションから照会および選択できるようにする値。デバイスの種類が D3DDEVTYPE_SW の場合、この値は TRUE の固定である。デバイスの種類が D3DDEVTYPE_REF の場合は、アプリケーションでこの値を設定できる。デバイスの種類が D3DDEVTYPE_HAL の場合は、D3DDEVCAPS_HWTRANSFORMANDLIGHT が設定されているときに限り、アプリケーションでこの値を設定できる。それ以外の場合、このフラグは TRUE に固定される。可変の場合、デフォルト値は FALSE である。

両方の頂点処理が可能なモードにおいて、頂点処理のレンダリング ステートを変更すると、カレント ストリーム、インデックス、および頂点シェーダは、デフォルト値の ByVal 0 または 0 にリセットされる。

D3DRS_POINTSIZE
各頂点に対してポイント サイズが指定されていない場合に、ポイント サイズ計算で使用するサイズを指定する値。頂点がポイント サイズを含んでいる場合、この値は使用されない。この値は、D3DRS_POINTSCALEENABLE が FALSE の場合はスクリーン空間単位で指定する。それ以外の場合は、ワールド空間単位で指定する。デフォルト値は 1.0 である。この値の範囲は、0.0 以上である。
D3DRS_POINTSIZE_MIN
ポイント プリミティブの最小サイズを指定する値。レンダリングの間、ポイント プリミティブはこのサイズに固定される。1.0 より小さい値を設定すると、ポイントにピクセルの中心が含まれずにアンチエイリアシングが無効になっている場合はポイントが表示されなくなり、アンチエイリアシングが有効になっている場合は低い輝度でレンダリングされる。デフォルト値は 1.0 である。この値の範囲は、0.0 以上である。
D3DRS_POINTSPRITEENABLE
TRUE の場合は、テクスチャ全体が各ポイントにマッピングされるようにポイント プリミティブのテクスチャ座標が設定される。FALSE の場合は、頂点のテクスチャ座標がポイント全体に対して使用される。デフォルト値は FALSE である。D3DRS_POINTSCALEENABLE に FALSE (デフォルト値) を設定し、D3DRS_POINTSIZE に 1.0 (デフォルト値) を設定することで、DirectX 7 スタイルのシングルピクセル ポイントを実現できる。
D3DRS_POINTSCALEENABLE
ポイント プリミティブに対するサイズの計算を制御する値。TRUE の場合、ポイント サイズはカメラ空間の値として解釈され、距離関数および視錐台によってビューポートの Y 軸のスケーリングになるように調整されて、最終的なスクリーン空間のポイント サイズが計算される。FALSE の場合、ポイント サイズはスクリーン空間の値と解釈されて、そのまま使われる。デフォルト値は FALSE である。
D3DRS_POINTSCALE_A
ポイント プリミティブに対する距離ベースのサイズの減衰を制御する浮動小数点値。D3DRS_POINTSCALEENABLE が TRUE の場合にのみ有効である。デフォルト値は 1.0 である。この値の範囲は、0.0 以上である。
D3DRS_POINTSCALE_B
ポイント プリミティブに対する距離ベースのサイズの減衰を制御する浮動小数点値。D3DRS_POINTSCALEENABLE が TRUE の場合にのみ有効である。デフォルト値は 0.0 である。この値の範囲は、0.0 以上である。
D3DRS_POINTSCALE_C
ポイント プリミティブに対する距離ベースのサイズの減衰を制御する浮動小数点値。D3DRS_POINTSCALEENABLE が TRUE の場合にのみ有効である。デフォルト値は 0.0 である。この値の範囲は、0.0 以上である。
D3DRS_MULTISAMPLEANTIALIAS
マルチサンプル レンダリングのターゲット バッファを使うときの、個々のサンプルの計算方法を決定する値。TRUE の場合は、複数サンプルのそれぞれについて異なるサンプリング位置でサンプリングすることでフルシーン アンチエイリアシングを実行するように、複数のサンプルが計算される。FALSE の場合は、複数のサンプルはすべて同じサンプリング値 (ピクセルの中心でサンプリングされた値) で記述されて、マルチサンプル バッファに対する非アンチエイリアシング レンダリングが可能になる。シングル サンプル バッファへのレンダリング時、このレンダリング ステートはエフェクトを持たない。デフォルト値は TRUE である。
D3DRS_MULTISAMPLEMASK
LSB を先頭とするこのマスクの各ビットは、マルチサンプル レンダリング ターゲットの 1 つのサンプルに対する変更を制御する。したがって、8 サンプルのレンダリング ターゲットの場合は、8 つのサンプルのそれぞれに対する 8 つの書き込み許可情報が、下位バイトに格納されている。シングル サンプル バッファへのレンダリング時、このレンダリング ステートはエフェクトを持たない。デフォルト値は &HFFFFFFFF である。

このレンダリング ステートを使うと、マルチサンプル バッファを蓄積バッファとして使い、各パスがサンプルのサブセットを更新するようなジオメトリのマルチパス レンダリングを行うことができる。

D3DRS_PATCHEDGESTYLE
パッチのエッジでフロート型のテッセレーションを使用するかどうかを設定する。使用できる値は、CONST_D3DPATCHEDGESTYLE 列挙型によって定義される。
D3DRS_PATCHSEGMENTS
高次プリミティブを描画するときのエッジごとのセグメントの数。
D3DRS_DEBUGMONITORTOKEN
モニタをデバッグする場合にのみ設定する。
D3DRS_POINTSIZE_MAX
ポイント スプライトが制限される最大サイズを指定する値。値は、D3DCAPS8MaxPointSize メンバ以下で、D3DRS_POINTSIZE_MIN 以上でなければならない。
D3DRS_INDEXVERTEXBLENDENABLE
TRUE の場合は、インデックス付き頂点ブレンディングが有効である。FALSE の場合、インデックス付き頂点ブレンディングが無効である。このレンダリング ステートが有効な場合は、頂点ごとにパックされた LONG で行列インデックスを渡さなければならない。このレンダリング ステートを無効にし、D3DRS_VERTEXBLEND ステートを使って頂点ブレンディングを有効にすることは、すべての頂点について行列インデックス 0、1、2、3 を指定することと同じである。
D3DRS_COLORWRITEENABLE
レンダリング ターゲットのカラー バッファに対するチャネルごとの書き込みを有効にする値。ビットを設定すると、3D レンダリングの間にカラー チャネルが更新される。ビットをクリアすると、カラー チャネルは更新されない。デバイスに対して D3DCAPS8 型の PrimitiveMiscCaps メンバに D3DPMISCCAPS_COLORWRITEENABLE 能力ビットが設定されている場合、この機能は有効である。このレンダリング ステートは、クリア処理に影響を与えない。デフォルト値は &H0000000F である。

このレンダリング ステートの有効値は、CONST_D3DCOLORWRITEENABLEFLAGS 列挙で定義されている値の任意の組み合わせである。

D3DRS_TWEENFACTOR
トゥイーン係数を制御する値。
D3DRS_BLENDOP
アルファ ブレンディング レンダリング ステートの D3DRS_ALPHABLENDENABLE が TRUE に設定されている場合に適用する算術処理の選択に使用される値。有効な値は、CONST_D3DBLENDOP 列挙型で定義される。デフォルト値は D3DBLENDOP_ADD である。

D3DPMISCCAPS_BLENDOP デバイス能力がサポートされていない場合は、D3DBLENDOP_ADD が実行される。

注意

Direct3D は、アプリケーションでの便宜を考慮して、(D3DRS_WRAPn ステート値の 1 つを明示的に使用する代わりに) CONST_D3DWRAPBIAS 列挙で定義されている定数 D3DRENDERSTATE_WRAPBIAS を定義し、テクスチャ座標セットのゼロから始まる整数値に基づいて、テクスチャ ラッピングを有効にしたり、無効にしたりする。次の例のように、D3DRENDERSTATE_WRAPBIAS 値をテクスチャ座標セットのゼロ始点インデックスに加算して、そのインデックスに対応する D3DRS_WRAPn 値を計算する。

    On Local Error Resume Next
 
    ' 変数 lIndex のインデックスに対応するテクスチャ座標セットを
    ' 使用するテクスチャに対して、U/V ラッピングを有効にする。
    Call d3dDevice8.SetRenderState( _
            lIndex + D3DRENDERSTATE_WRAPBIAS, _
            D3DWRAPCOORD_0 Or D3DWRAPCOORD_1)
 
    ' lIndexが 3 の場合、加算の結果の値は、
    ' D3DRENDERSTATE_WRAP3 (131) に等しくなる。
    If Err.Number <> DD_OK Then
       ' エラー処理コード。
    End If