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=kSp_H8x_otM

MODOには他のアイテムのトランスフォームに合わせて動くコンストレイントという機能が実装されています。このコンストレイントの機能はセットアップレイアウトのモディファイヤのタブの中にあるコンストレイントというカテゴリにまとめられています。サンプルシーンに用意されている三つのメッシュを用いて解説していきましょう。

まずコンストレイントの一番上にある位置というボタンは、あるアイテムを他のアイテムと同じ位置にぴったりと合わせる機能です。例えば緑を赤に合わせたい場合、緑のメッシュを選択してから赤のメッシュを選択し、位置ボタンを押すと、ぴったりと位置を合わせることができます。緑のメッシュを選択すると、新たにトランスフォームコンストレイントというプロパティが用意されるようになりました。ここでは合わせた位置からオフセットを設定したり、または出力オプションの追加で位置の合わせ具合をパーセンテージでコントロールすることが可能です。

解除する場合は、同じように緑、赤と選択してから、Shiftキーを押しながら位置のボタンを押します。また緑と青を赤に合わせたい場合には、緑、青、赤と選択してから、Ctrlボタンを押しながら位置のボタンをクリックします。これは複数のアイテムを合わせたい場合に有効な手段です。

同様に位置ボタンの下にある回転のボタンは、回転を合わせるようになります。位置ボタンを長押しすると出てくるスケールは、大きさを合わせるようになります。また方向のボタンは、必ずターゲットとなるメッシュを向くようになります。回転スケール方向の場合も、位置のコンストレイントと同様に複数メッシュに対して同時にコンストレイントを設定したり、またコンストレイントの度合いを設定することが可能です。

頂点の位置はメッシュのセンターに合わせるのではなく、メッシュ内の特定のジオメトリに対して位置や回転を合わせることができます。これについては「波の動きに合わせてアイテムを動かすには」で解説していますので、そちらをご覧ください。またパスの場合は、用意されているパス上にぴったりと合わせることができますので、パスアニメーションが可能になります。こちらも「パスアニメーションを行うには」で詳しく解説していますので、そちらをご覧ください。

その下にある交差ライン:2アイテムは、二つのアイテムをつなぐ直線に対して、三つ目のアイテムから最短となる位置にロケータを生成します。例えば、青、赤、緑の順番でアイテムを選択し、この交差ライン:2アイテムのボタンをクリックすると、赤と緑の間に直線が描画され、青のメッシュからその直線に対して最短距離となる点線が引かれます。この点線と直線との交点に対してロケータが生成されるようになります。同様に交差ライン:リニアカーブは直線に対して、交差平面は平面に対して、交差サーフェイスはサーフェイスに対して直線距離部分との交点にロケータを生成します。

では、これらコンストレイント機能を利用して、シーンをセットアップしてみます。まず最初に各アイテムを接続するためのラインを2本作ります。1本のラインは赤と緑の間を、そしてもう1本のラインは赤と緑をつなぐラインに対して、青のメッシュから最短距離、つまり垂直につなぐラインとなります。ここで大事なのは長さ1メートルのラインを作ることです。

ラインを選択し、その位置を赤のメッシュへと合わせるため、赤のメッシュに対して位置のコンストレイントを設定します。次にラインが緑のアイテムのほうへと伸びるようにするため、緑に対して方向のコンストレイントを設定します。このとき、方向のコンストレイントのプロパティで正しいを設定するようにしてください。これで位置や方向は決まりましたが、長さが1メートルのままなので、キレイに接続できていません。

これを設定するためにはスケマティックビューで簡単なリグを組みます。まずは設定するメッシュのX軸に対するスケールのチャンネルを追加します。スケールに対して必要になるのは、赤と緑のアイテム間にある距離ですので、距離を測定するノードを追加します。追加チャンネルモディファイヤ測定Measure Distanceでノードを追加したら、赤と緑のワールド位置のチャンネルを追加し、起点終点に接続します。このノードで導き出される距離の値を、そのままスケールのノードへと接続します。ラインのメッシュは長さ1メートルで作成したので、この距離の値がそのままスケールの値として使うことができます。

これと同じようにもう一本、ラインの接続を行います。これで赤、緑、青のアイテムを自由に動かしても、必ずその間をつなぐラインが自動的に生成されるようになります。

2014年12月3日