Warning: Use of undefined constant ace - assumed 'ace' (this will throw an Error in a future version of PHP) in /home/luxology/www/web_new/tipsblog/wp-content/plugins/advanced-category-excluder/advanced-category-excluder.php on line 310

Warning: Use of undefined constant ace - assumed 'ace' (this will throw an Error in a future version of PHP) in /home/luxology/www/web_new/tipsblog/wp-content/plugins/advanced-category-excluder/advanced-category-excluder.php on line 310
リプリケータによるリグの複製方法について — MODO 機能紹介・チップスサイト



MODO 機能紹介・チップスサイト このサイトでは、MODOの基本機能やチップスをご紹介していきます。

リプリケータによるリグの複製方法について

https://www.youtube.com/watch?v=PYD8Y5WQksw

MODO 901ではリプリケータでリグ全体を複製することができるようになり、パーティクルのシステムなどと合わせることでより面白い表現が可能になりました。

まずはサンプルとなるシーンを見ていきましょう。サンプルシーンに用意されているのは、土台となるBaseメッシュの上に、六つのWingメッシュが組み合わされており、WingメッシュはBaseメッシュの子アイテムとなっています。WingメッシュはX軸に対して回転を行うことで、土台を中心に外側へと開くことができるような仕組みになっています。

まずは親となるBaseメッシュにユーザー定義のチャンネルを一つ作り、そのチャンネルが六つのWingメッシュの回転を同時に制御するようにします。Baseを選択し、ユーザーチャンネルのタブからユーザーチャンネル追加ボタンをクリックします。これから作成するユーザーチャンネルがリプリケータでのリグの複製において重要な役割を果たすことになりますが、そのためにはユーザーチャンネルのタイプに気を付けるようにしてください。今回、このユーザーチャンネルが回転を制御することになるため、どうしても回転タイプのチャンネルを作りたくなりますが、必ず浮動小数点数タイプのチャンネルを作るようにします。最小値は0/最大値は1に設定しておきます。このチャンネルをスケマティックビューへと追加したら、さらにBasic Math乗算のノードも追加し、このチャンネルの値に対して90度掛け合わせた値を出力するよう接続します。これにより、90度掛け合わせた値を、Wingメッシュの回転値として使用します。

ではWingメッシュをすべて選択し、チャンネルタブの設定から結合を表示をオンにし、回転のXチャンネルをスケマティックビューへと追加します。追加された6つの回転Xチャンネルは選択状態にありますので、そのままShiftキーを押しながら乗算ノードの出力へと接続します。これで一気に同時に6つの回転チャンネルへの接続が可能になります。

ではBaseメッシュのユーザーチャンネルを選択し値を変更してみましょう。値を変更するたびに、羽根がキレイに開くようになりました。ではこのリグ全体を今度はリプリケータで複製してみます。

まずは複製の元となるポイントソースを作り、リプリケータを追加したら、プロパティから原型となるアイテムにBaseメッシュを指定します。このとき、その子アイテムとなるWingメッシュも複製したいので、必ず子アイテムを含むオプションもオンにしておいてください。キレイに複製されたものの、この場合にはユーザーチャンネルの値が全て均一になっているのがわかります。これを901から新たにリプリケータに搭載された機能によって、変更していきます。

リプリケータをスケマティックビューへと追加し、ノードを右クリックしてコンテキストメニューを見てみると、パーティクル特性の追加というメニューが追加されています。これはリプリケータのポイントソースのパーティクル属性を取得する機能となります。ここではパーティクルのIDを追加し、これをBaseメッシュのRotationへと接続してみましょう。すると今まで均一だった開き方が、パーティクルの各IDに従ってランダムに変化しているのが確認できます。

今度はポイントソースをパーティクルへと変えて試してみましょう。そうするとパーティクルの動きに合わせて複製されたメッシュも動いていきますが、羽根は閉じたままの状態なので、パーティクルの発生と同時に羽根が開いていくような設定を行ってみます。先ほどと同様、リプリケータのノードを右クリックし、コンテキストメニューのパーティクル特性の追加から、今度は寿命を追加し、これをユーザーチャンネルへと接続します。

そうするとパーティクル発生からの経過時間とユーザーチャンネルとがリンクするようになりますので、発生してからゆっくりと羽根を広げるような動きを表現できるようになります。

このようにリプリケータにパーティクルの特性を使用できるようになったことで、様々な面白い表現が可能になりました。

2015年7月22日