WPF では、ShaderEffects を定義するときに、
ShaderEffect.RegisterPixelShaderSamplerProperty()
ピクセル シェーダー サンプラー プロパティ (実際のピクセル シェーダーに供給され、Brush 型のもの) を導入する。しかし、これらのプロパティを ShaderEffect クラスから取得するにはどうすればよいでしょうか?
WPF では、ShaderEffects を定義するときに、
ShaderEffect.RegisterPixelShaderSamplerProperty()
ピクセル シェーダー サンプラー プロパティ (実際のピクセル シェーダーに供給され、Brush 型のもの) を導入する。しかし、これらのプロパティを ShaderEffect クラスから取得するにはどうすればよいでしょうか?
RegisterPixelShaderSamplerProperty は、ShaderEffect から派生したクラスで使用できるようになる新しい DependencyProperty を作成します。
アクセスするために CLR ラッパーを作成できます。
public static readonly DependencyProperty InputProperty =
ShaderEffect.RegisterPixelShaderSamplerProperty("Input", typeof(MyShaderEffect), 0);
public Brush Input
{
get
{
return (Brush)GetValue(InputProperty);
}
set
{
SetValue(InputProperty, value);
}
}
XAML/WPF のシェーダーを作成するときに役立つ書籍へのリンクを次に示します。