| パッケージ | flash.display |
| クラス | public final dynamic class ShaderParameter |
| 継承 | ShaderParameter Object |
value プロパティに割り当てます。
Shader インスタンスのパラメータを表す ShaderParameter インスタンスは、Shader インスタンスの data プロパティのプロパティとしてアクセスします。ShaderParameter プロパティの名前は、シェーダコードのパラメータ名と同じです。例えば、次に示すように、シェーダが radius という名前のパラメータを定義すると、radius パラメータを表す ShaderParameter インスタンスが radius プロパティとして使用できます。
var radiusParam:ShaderParameter = myShader.data.radius;
ShaderParameter クラスの定義されたプロパティに加えて、各 ShaderParameter インスタンスには、そのパラメータに定義されたメタデータに対応する追加のプロパティがあります。これらのプロパティは、ShaderParameter オブジェクトの作成時に追加されます。プロパティ名はシェーダのソースコードで指定されたメタデータ名と一致します。各プロパティのデータ型は、対応するメタデータのデータ型によって異なります。"description" などのテキストメタデータ値は、String インスタンスです。ストリング以外の値(minValue、defaultValue など)を持つメタデータプロパティは、Array インスタンスとなります。エレメント数とエレメントデータ型はメタデータ値に対応します。
例えば、シェーダに次の 2 つのパラメータ宣言が含まれるとします。
parameter float2 size
<
description: "The size of the image to which the kernel is applied";
minValue: float2(0.0, 0.0);
maxValue: float2(100.0, 100.0);
defaultValue: float2(50.0, 50.0);
>;
parameter float radius
<
description: "The radius of the effect";
minValue: 0.0;
maxValue: 50.0;
defaultValue: 25.0;
>;
size パラメータに対応する ShaderParameter インスタンスは、ビルトインプロパティのほかに、次のメタデータプロパティを持ちます。
| プロパティ名 | データ型 | 値 |
|---|---|---|
name
| String |
"サイズ"
|
description
| String |
"カーネルが適用されるイメージのサイズ"
|
minValue
| Array |
[0, 0]
|
maxValue
| Array |
[100, 100]
|
defaultValue
| Array |
[50, 50]
|
radius パラメータに対応する ShaderParameter には、次の追加プロパティがあります。
| プロパティ名 | データ型 | 値 |
|---|---|---|
name
| String |
"半径"
|
description
| String |
"エフェクトの半径"
|
minValue
| Array |
[0]
|
maxValue
| Array |
[50]
|
defaultValue
| Array |
[25]
|
一般に、開発者コードでは直接 ShaderParameter インスタンスは作成されません。ShaderParameter インスタンスは、Shader インスタンスが作成されるときに、シェーダの各パラメータに対して作成されます。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
| index : int [読み取り専用]
パラメータのインデックス。このインデックスは 0 から始まります。 | ShaderParameter | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| type : String [読み取り専用]
シェーダで定義されているパラメータのデータ型です。 | ShaderParameter | ||
| value : Array
パラメータ値としてシェーダに渡される値です。 | ShaderParameter | ||
| メソッド | 定義元 | ||
|---|---|---|---|
ShaderParameter インスタンスを作成します。 | ShaderParameter | ||
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。 | Object | |
| index | プロパティ |
index:int [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
パラメータのインデックス。このインデックスは 0 から始まります。
public function get index():int| type | プロパティ |
type:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
シェーダで定義されているパラメータのデータ型です。type プロパティで使用可能な値セットは、ShaderParameterType クラスの定数によって定義されます。
public function get type():String関連項目
| value | プロパティ |
value:Array| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
パラメータ値としてシェーダに渡される値です。value プロパティはインデックス付き Array です。Array エレメントの数とタイプはパラメータのデータ型に対応します。これは、type プロパティを使用して決定できます。
次の表に、パラメータタイプと対応する value Array エレメントの数とデータ型を示します。
| パラメータタイプ | エレメントの数 | エレメントのデータ型 |
|---|---|---|
float (ShaderParameterType.FLOAT) | 1 | Number |
float2 (ShaderParameterType.FLOAT2) | 2 | Number |
float3 (ShaderParameterType.FLOAT3) | 3 | Number |
float4 (ShaderParameterType.FLOAT4) | 4 | Number |
int (ShaderParameterType.INT) | 1 | int または uint |
int2 (ShaderParameterType.INT2) | 2 | int または uint |
int3 (ShaderParameterType.INT3) | 3 | int または uint |
int4 (ShaderParameterType.INT4) | 4 | int または uint |
bool (ShaderParameterType.BOOL) | 1 | Boolean |
bool2 (ShaderParameterType.BOOL2) | 2 | Boolean |
bool3 (ShaderParameterType.BOOL3) | 3 | Boolean |
bool4 (ShaderParameterType.BOOL4) | 4 | Boolean |
float2x2 (ShaderParameterType.MATRIX2X2) | 4 | Number |
float3x3 (ShaderParameterType.MATRIX3X3) | 9 | Number |
float4x4 (ShaderParameterType.MATRIX4X4) | 16 | Number |
マトリックスパラメータタイプの場合、配列エレメントは最初マトリックス行に入力され、次に列に入力されます。例えば、次の ActionScript 行を使用して、myMatrix という名前の float2x2 パラメータを入力するとします。
myShader.data.myMatrix.value = [.1, .2, .3, .4];
シェーダ内で、各マトリックスエレメントは次の値を持ちます。
myMatrix[0][0]: .1myMatrix[0][1]: .2myMatrix[1][0]: .3myMatrix[1][1]: .4 public function get value():Array public function set value(value:Array):void| ShaderParameter | () | コンストラクタ |
public function ShaderParameter()| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
ShaderParameter インスタンスを作成します。ShaderParameter コンストラクタは開発者コードでは直接呼び出されません。ShaderParameter インスタンスは、Shader インスタンスが作成されるときに、シェーダの各パラメータに対して作成されます。
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/display/ShaderParameter.html