次の方法で共有


TextureState クラス

TextureState クラス

使用例

  • テクスチャと頂点色のブレンド

このデバイスのためのテクスチャの状態。

定義

Visual Basic Public Class TextureState
   Inherits Object 
C# public class TextureState : Object
Managed C++ public __gc class TextureState  : public Object
JScript public class TextureState extends Object

メンバ テーブル

次のテーブルは、TextureState オブジェクトによって公開されているメンバの一覧である。左側のタブをクリックし、表示したいメンバの種類を選ぶこと。

メソッド

メソッド 説明
FromTextureState
TextureState
ToString

プロパティ

プロパティ 説明
AlphaArgument0 三項演算 (積和および線形補間) のアルファ チャンネル セレクタ オペランドの設定。 D3DTAConstants によって識別される。この設定は、デバイス能力の D3DTEXOPCAPS_MULTIPLYADD または D3DTEXOPCAPS_LERP が存在する場合にサポートされる。デフォルトの引数は D3DTA_CURRENT である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。デフォルトの引数は (0.0, 0.0, 0.0, 0.0) である。
AlphaArgument1 テクスチャ ステージ ステートは、そのステージに対する最初のアルファ引数であり、D3DTAConstants により識別される。デフォルトの引数は D3DTA_TEXTURE である。そのステージにテクスチャが設定されていない場合は、D3DTA_DIFFUSE がデフォルトの引数となる。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
AlphaArgument2 テクスチャ ステージ ステートは、ステージの 2 番目のアルファ引数であり、D3DTAConstants により識別される。デフォルトの引数は D3DTA_CURRENT である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
AlphaOperation テクスチャ ステージ ステートは、テクスチャ アルファ ブレンディング処理であり、D3dtextureop 列挙型のメンバによって識別される。最初のテクスチャ ステージ (ステージ 0) のデフォルト値は D3DTOP_SELECTARG1 であり、それ以外のすべてのステージのデフォルト値は D3DTOP_DISABLE である。
BumpEnvironmentLuminanceOffset バンプマップ輝度に使用する浮動小数点数のオフセット。デフォルト値は 0.0 である。
BumpEnvironmentLuminanceScale バンプマップ輝度に使用する浮動小数点数のスケール値。デフォルト値は 0.0 である。
BumpEnvironmentMaterial00 テクスチャ ステージ ステートは、バンプ マッピング行列の [0][0] 係数に対する浮動小数点値である。デフォルト値は 0.0 である。
BumpEnvironmentMaterial01 テクスチャ ステージ ステートは、バンプ マッピング行列の [0][1] 係数に対する浮動小数点値である。デフォルト値は 0.0 である。
BumpEnvironmentMaterial10 テクスチャ ステージ ステートは、バンプ マッピング行列の [1][0] 係数に対する浮動小数点値である。デフォルト値は 0.0 である。
BumpEnvironmentMaterial11 テクスチャ ステージ ステートは、バンプ マッピング行列の [1][1] 係数に対する浮動小数点値である。デフォルト値は 0.0 である。
ColorArgument0 三項演算 (積和および線形補間) の 3 番目の色オペランドの設定。 D3DTAConstants によって識別される。この設定は、デバイス能力の D3DTEXOPCAPS_MULTIPLYADD または D3DTEXOPCAPS_LERP が存在する場合にサポートされる。デフォルトの引数は D3DTA_CURRENT である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
ColorArgument1 テクスチャ ステージ ステートは、そのステージに対する最初の色引数であり、D3DTAConstants により識別される。デフォルトの引数は D3DTA_TEXTURE である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
ColorArgument2 テクスチャ ステージ ステートは、ステージの 2 番目の色引数であり、D3DTAConstants により識別される。デフォルトの引数は D3DTA_CURRENT である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
ColorOperation テクスチャ ステージ ステートはテクスチャ カラー ブレンディング処理であり、D3dtextureop 列挙型のメンバにより識別される。最初のテクスチャ ステージ (ステージ 0) のデフォルト値は D3DTOP_MODULATE であり、それ以外のすべてのステージのデフォルト値は D3DTOP_DISABLE である。
ConstantColor
ResultArgument
TextureCoordinateIndex このテクスチャ ステージで使うために設定されたテクスチャ座標インデックス。頂点 1 個に対して最大 8 セットまでのテクスチャ座標を設定できる。頂点が、指定されたインデックスのテクスチャ座標セットを含んでいない場合は、u および v 座標 (0,0) がデフォルトで使用される。このフラグは、固定機能頂点処理でのみ使用する。たとえば、頂点シェーダでは使用しない。頂点シェーダを使ってレンダリングするときは、各ステージのテクスチャ座標インデックスをデフォルト値に設定する必要がある。各ステージのデフォルトのインデックスは、ステージ インデックスと同じである。このステートには、このテクスチャ ステージで使用する各頂点に対する座標セットのゼロから始まるインデックスを設定する。 また、アプリケーションでは、(設定されるインデックスとの論理和として) 以下のフラグのいずれかを設定して、テクスチャ トランスフォーム用の入力テクスチャ座標を自動的に生成するよう Microsoft® Direct3D® に要求できる。ゼロに解決される D3DTSS_TCI_PASSTHRU を除き、設定されるインデックスと以下のフラグのいずれかを使うと、テクスチャ ラッピング モードの決定にインデックスが厳密に使われる。このフラグは環境マッピングを行う場合には特に有効である。
TextureTransform このテクスチャ ステージのテクスチャ座標のトランスフォームを制御する。

継承の階層構造

Object

TextureState

使用例

テクスチャと頂点色のブレンド

この例では、色のブレンドとアルファの設定によって、ステージ 0 のテクスチャ ステートを作成する。

このコードでは、TextureState プロパティの 0 番目のステージのみが更新される。出力カラーは、テクスチャ カラーとディフューズ色を、赤、緑、青チャンネルごとに乗算したもので、アルファ値は乗算しない。次のプロパティは、アプリケーション定義の myRender メソッドで設定される。

  1. ColorOperation カラー処理プロパティは Modulate に設定する。 これは、ColorArgument1ColorArgument2 の ARGB 成分をそれぞれに乗算する。赤は、ColorArgument1 の赤の値と ColorArgument2 の赤の値の積になる。他の色も同様である。
  2. 1 番目のカラー引数 ColorArgument1 は、テクスチャ カラーの TextureColor に設定する。
  3. 2 番目のカラー引数 ColorArgument2 はディフューズ色の Diffuse に設定する。
  4. AlphaOperation アルファ処理プロパティは Disable に設定する。これは、このテクスチャ ステージからの出力、およびより高いインデックスを持つステージからの出力をすべて無効にする。
    using Microsoft.DirectX.Direct3D;
    
    public class myTextures : System.Windows.Forms.Form
    {
        // Global variables for this project
        Device device = null;   // Rendering device
        Texture texture = null; // Texture object
        
        private void myRender()
        {
            .
            .
            .
            // Set up texture.
            device.SetTexture(0,texture);
        
            device.TextureState[0].ColorOperation = TextureOperation.Modulate;
            device.TextureState[0].ColorArgument1 = TextureArgument.TextureColor;
            device.TextureState[0].ColorArgument2 = TextureArgument.Diffuse;
            device.TextureState[0].AlphaOperation = TextureOperation.Disable;
            .
            .
            .
        }
        .
        .
        .
    }

クラスの情報

名前空間 Microsoft.DirectX.Direct3D
アセンブリ Microsoft.DirectX.Direct3D (microsoft.directx.direct3d.dll)
厳密名 Microsoft.DirectX.Direct3D,  Version=0293,  Culture=neutral,  PublicKeyToken=d3231b57b74a1492

© 2002 Microsoft Corporation. All rights reserved. Terms of use.