Set Attribute from Curve/Gradient
メニューパス: Attribute > Curve > [Add/Set] <Attribute> <Mode>
Set Attribute from Curve/Gradient ブロックは、Animation Curve または Gradient からのサンプルに基づき、構図を使って 属性に値を書くことができる、包括的なブロックです。これを実行するために、ブロックは様々なサンプリングモードを使います。サンプリングモードは、以下の通りです。
Over Life: パーティクルの相対年齢 (Age/Lifetime 比) を計算し、カーブ/グラデーションをサンプリングして値を取得するために使います。
From Speed: 速度属性の長さに基づいてスピードを計算し、カーブ/グラデーションのサンプリングに使います。
- Random: および RandomUniformPerParticle: 0 と 1 の間のランダム値を計算し、カーブ/グラデーションのサンプリングに使います。このランダムな方法では、組織的に非リニア分布を作成することができます。
- Custom: プロパティまたは演算子のいずれかを使う float 入力ポートを展開し、カスタマイズされた方法でカーブをサンプリングします。
ブロックの互換性
このブロックは、以下のコンテキストと互換性があります。
- Initialize
- Update
- すべての出力コンテキスト
ブロックの設定
設定 | Type | 説明 |
---|---|---|
Attribute | Attribute | (Inspector) 書き込む属性を特定します。 |
Composition | Enum | (Inspector) ブロックが属性をどのように構成するかを特定します。オプションは以下の通りです。 • Set: 位置属性を新しい値で上書きします。 • Add: 新しい値を位置属性値に追加します。 • Multiply: 位置属性値を新しい値で乗算します。 • Blend: 位置属性値と新しい値を補間します。ブレンド要素は 0 と 1 の間に指定できます。 |
Alpha Composition | Enum | (Inspector) ブロックが色のアルファコンポーネント属性をどのように構成するかを特定します。オプションは以下の通りです。 • Set: アルファを新しい値で上書きします。 • Add: 新しい値をアルファ値に追加します。 • Multiply: アルファ値を新しい値で乗算します。 • Blend: アルファ値と新しい値を補間します。ブレンド要素は 0 と 1 の間に指定できます。 |
Sample Mode | Enum | カーブ/グラデーションをサンプリングする値の計算方法を特定します。オプションは以下の通りです。 • OverLife: age/lifetime 属性比率を使います。 • BySpeed: パーティクルのスピードを計算し、最小および最スピード範囲値に応じて、0 から 1 の値を割り当てます。 • Random: ブロックが実行するたびに、0 から 1 の間のランダム数を計算します。 • RandomConstantPerParticle: 0 から 1 の間のランダム数を計算します。このランダム数は、パーティクルにそれぞれに固有です。 • Custom 入力ポートで指定できる、カスタム値を使います。 |
Mode | Enum | (Inspector) 属性を構成するためのランダム値をブロックがどのように計算するかを特定します。 • PerComponent: 異なるカーブまたはカラー属性のグラデーションで、各コンポーネントに値をサンプリングします。 • Uniform: 単一の、一般的な AnimationCurve から、各コンポーネントに値をサンプリングします。 この設定は、複数のコンポーネントを持つ Attribute のみに、表示されます。 |
Channels | Enum | ブロックがどのチャンネルの属性に影響を与えるかを特定します。このプロパティに含まれないチャンネルには影響を与えません。 この設定はチャンネルを持つ Attribute のみに表示されます。 |
ColorMode | Enum | ブロックが影響を与えるカラー属性のコンポーネントを特定します。オプションは以下の通りです。 • Color: パーティクルの色のみに影響します。 • Alpha: パーティクルのアルファのみに影響します。 • Color And Alpha: パーティクルの色とアルファの両方に影響します。 この設定は、Attribute を color に設定したときのみ表示されます。 |
ブロックのプロパティ
Input | Type | 説明 |
---|---|---|
属性によって異なる | ブロックが値をサンプリングするために使う、AnimationCurve(s) または Gradient を提供します。 Mode を Uniform に設定すると、属性の名前がついた単一のカーブのみが表示されます。 カラーを除く属性の Mode を PerComponent に設定すると、各コンポーネントに対する AnimationCurve ポートが表示されます。 カラー属性の Mode を PerComponent に設定すると、グラデーションが表示されます。 |
|
Speed Range | Vector2 | ブロックがパーティクルのスピードを標準化するために使う、最小および最大スピードです。このプロセスは基本的に、InverseLerp と同じで、最小 (x) は a、最大 (y) は b、そしてパーティクルのスピードは value です。 このプロパティは、Sample Mode を BySpeed に設定したときのみ表示されます。 |
Sample Time | float | ブロックがカーブ/グラデーションをサンプリングするために使う値です。 このプロパティは、Sample Mode を Custom に設定したときのみ表示されます。 |
Blend | float | 属性の既存値と新たに計算された値のブレンドパーセンテージです。 このプロパティは、Composition または Alpha Composition を Blend に設定したときのみ表示されます。 |