パーティクルのインスタンス
パーティクルのインスタンス制作手順
基本的な制作手順
- Visor からブラシを選択します。
以下の図では、feathers の中から選んでいます。
- 選んだブラシで短いストロークを描きます。
- アニメーション時に重たくならないように 表示制度 の値を小さくしておきます。
- ポリゴンの平面を作成します。
- エミッターを作成します。
ポリゴンの平面を選択した状態で、以下のメニューを選択します。
- エミッターのアトリビュートを設定します。
- エミッタ タイプ
- 一方向
- レート
- 2 〜 5 程度
プレイバック時にスムースなアニメーションをさせるために、
最初はなるべく小さな値にしておきます。
- 方向 X
- 0.0
- 方向 Y
- 1.0
- 方向 Z
- 0.0
- スプレッド
- 0.5
- スピード
- 5.0
- ランダム スピード
- 5.0
- アニメーションを再生すると、ポリゴン平面からパーティクルが発生します。
以下の図では、見やすくするために パーティクルのレンダータイプ を 球体 にしてあります。
- ストロークとパーティクルを選択して、インスタンスを作成します。
- パーティクルを選択して、大気 フィールドを作成します。
- 大気 フィールドのアトリビュートを設定します。
- マグニチュード
- 20.0
- 方向
- 1.0 -1.0 0.0
- プレイバックしてみます。
(パーティクルのレンダータイプ は ポイント にしてあります)
応用
インスタンスを回転させながらアニメーションさせてみます。
- パーティクルにアトリビュートを追加します。
- ダイナミック アトリビュートの追加 の 一般 ボタンを押します。
- アトリビュートの追加 ウインドウに新しいアトリビュートの設定を入力し、
追加 ボタンを押します。
- アトリビュートの名前
- 適当な名前を考えて入力します。
(ここでは myRotate にしてあります)
- データ型
- vector
- アトリビュートタイプ
- パーティクル単位(配列)
- 追加したアトリビュートをインスタンスを回転させるアトリビュートに設定します。
パーティクルのアトリビュートで、
セクション内の
を追加したアトリビュート名に変更します。
- 追加したアトリビュートにダイナミックエクスプレッションを設定します。
ダイナミックエクスプレッションは 作成時 と、
ダイナミクス前のランタイム によって設定します。
まず 作成時 を設定します。
パーティクルのアトリビュートで、
パーティクル単位(配列)アトリビュート
にある追加したアトリビュート名の右欄を MRB によりクリックして
表示されるメニューから 作成エクスプレッション を選びます。
表示された エクスプレッション エディタ の
エクスプレッション に以下の式を入力し、作成 ボタンを押します。
float $val = rand(0, 180);
myRotate=<<$val, $val, $val>>;
- ダイナミクス前のランタイム を設定します。
エクスプレッション エディタ の パーティクル を ダイナミクス前のランタイム にします。
- 単純な回転
各パーティクルを同じ速度で回転させます。
エクスプレッション に以下の式を入力し、作成 ボタンを押します。
myRotate+=<<5, 8, 10>>;
- 複雑な回転
回転速度をパーティクルごとに変えてみます。
エクスプレッション に以下の式を入力し、作成 ボタンを押します。
float $val = particleId % 5 / 5.0;
myRotate+=<<$val*5, $val*8, $val*10>>;
レンダリングの設定
レンダリングをなるべく早く実行させるための設定です。
- パーティクルの ライフスパン を設定して、見えないパーティクルが消えるようにします。
レンダリングするカメラから見て、
カメラから外れたパーティクルが消えるように ライフスパン の値を決めます。
- パーティクルレンダーキャッシュを作っておきます。
このメニューを選ぶと、
アニメーションが開始されるので、アニメーション終了時にシーンを保存しておきます。
練習課題
参考
- Maya
Maya, MEL, Maya関係のコマンドなどのページ。
- フィールド
フィールドを作成する MEL スクリプト
Prev | Next
Home | Contents
Mail