TextureState.ColorArgument2
ColorArgument2 プロパティ
使用例
- テクスチャと頂点色のブレンド
テクスチャ ステージ ステートは、ステージの 2 番目の色引数であり、D3DTAConstants により識別される。デフォルトの引数は D3DTA_CURRENT である。読み書き用のテンポラリ レジスタの色を選択するには、D3DTA_TEMP を指定する。D3DTA_TEMP は、D3DPMISCCAPS_TSSARGTEMP デバイス能力が存在する場合にサポートされる。このレジスタのデフォルト値は、(0.0, 0.0, 0.0, 0.0) である。
定義
Visual Basic | Public Property ColorArgument2 As TextureArgument |
C# | public TextureArgument ColorArgument2 { get; set; } |
Managed C++ | public: __property TextureArgument get_ColorArgument2(); public: __property void set_ColorArgument2(TextureArgument); |
JScript | public function get ColorArgument2() : TextureArgument public function set ColorArgument2(TextureArgument); |
プロパティ値
Microsoft.DirectX.Direct3D.TextureArgument.
これは読み取り/書き込み可能プロパティである。
使用例
テクスチャと頂点色のブレンド
この例では、色のブレンドとアルファの設定によって、ステージ 0 のテクスチャ ステートを作成する方法を示す。
このコードでは、TextureState プロパティの 0 番目のステージのみが更新される。出力カラーは、テクスチャ カラーとディフューズ カラーを、赤、緑、青チャンネルごとに乗算したもので、アルファ値は乗算しない。次のプロパティは、アプリケーション定義の myRender メソッドで設定される。
- ColorOperation カラー処理プロパティは Modulate に設定する。 これは、ColorArgument1 と ColorArgument2 の ARGB 成分をそれぞれに乗算する。赤は、ColorArgument1 の赤の値と ColorArgument2 の赤の値の積になる。他の色も同様である。
- 1 番目のカラー引数 ColorArgument1 は、テクスチャ カラーの TextureColor に設定する。
- 2 番目のカラー引数 ColorArgument2 は、ディフューズ色の Diffuse に設定する。
- 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;
.
.
.
}
.
.
.
}
対象
© 2002 Microsoft Corporation. All rights reserved. Terms of use.