見出し画像

mayaリギング/忘備録♯01:基本編

■はじめに

これはmaya触るのが初めてに近い筆者が、リグをある程度作れるまでの知識をまとめた記事群だ。
自分の為の忘備的な側面が強く、「読めば"覚えたレベルに戻れる"まで」をコンセプトに、技術的なところを具体的に記していく。

●この記事の内容
・ショートカット/基本操作系
・ペアレントリギング


■1:リギングでよく使う項目/ショートカット


●基本操作系

Wキー:移動
Eキー:回転
Rキー:スケーリング
Tキー:オブジェクト入力(※1)
AorFキー:オブジェクトにカメラフォーカス(※2)
Sキー:グラフにキーを打つ(※3)
Dキー:ピボット移動モードにする。もう一度押すと元に戻る。【超重要】
Hキー:オブジェクトの表示/非表示(※4)
Zキー:元に戻す。SHIFT+Zでやり直し。

X/C/Vキー+移動操作:グリッド/カーブ/ポイントにスナップ(※5)【超重要】

スペース+マウス中クリック押しっぱなし+マウス移動:カメラの切り替え。

●親子付け系。【超重要】

Pキー:「ペアレンツ」。選択したオブジェクト同士を最後に選んだものを親にしてペアレント化。
G+CTRL:アウトライナ上で何も選択せずこの操作で「空オブジェクト(null)」を作る。
 また選択したオブジェクト同士を空オブジェクトを親にしたグループ化を行う。

●特殊操作系【超重要】

●項目のロック:
 チャネルボックス上で項目を選択 → 右クリック → 選択項目のロック。
 ロック解除もこれで出来る。余計なキーを打たせないために。
●CVのクラスター化:
 CVを表示して選択、メニュー → デフォーム → クラスタ/相対:オン。
 IKスプラインハンドルを使う際は必須。
●クローン:
 オブジェクトを選択してSHIFT+移動でオブジェクトのクローンを行う。
 コントローラ作ってるときに便利。
●項目のレイヤー化:
 アウトライナ上でレイヤー化したい項目を選択 → ディスプレイウインドウで右端のボタン → レイヤ化。
 非表示やロックが視覚的にできる。

●リギングでよく使うウインドウの場所

●アウトライナ: メニュー → ウインドウ → アウトライナ
●グラフエディタ: メニュー → ウインドウ → アニメーションエディタ → グラフエディタ
●アトリビュートエディタ: メニュー → ウインドウ → 一般エディタ → アトリビュートエディタ
●接続エディタ: メニュー → ウインドウ → 一般エディタ → 接続エディタ
●ノードエディタ: メニュー → ウインドウ → ノードエディタ

●表示系


●CVの表示: 
 ディスプレイ → NURBS → CV。
 IKスプラインハンドルを使う際必須。
●オブジェクトピボットの方向表示:
 ディスプレイ → トランスフォームディスプレイ → ローカル回転軸。
 nullにスナップするには表示が必要。
●チャネルボックスからの非表示: 
 ウィンドウ → 一般エディタ → チャネルコントロール
 こちらでキー設定ができる項目を表示非表示できる。
 表示されていない「最大値」等の項目も表示して設定できる。
●テンプレート化: 
 ディスプレイ → オブジェクトディスプレイ → テンプレート。
 リギングが終わった後にボーンを触れないように出来る。

●補助ツール

・rig101ワイヤーコントローラー

プロでも使ってる素晴らしいmel。
導入は以下のページを参照すると良い。



■2:ペアレントリギング

私の学習手順を追って説明する。
まず下記のページを参照させていただいた。

非常にシンプルにリグとは何か?を解説されておられるが、このページでやっていることを圧縮すると【ペアレントとは何か】だ。
試しに【球体にくっついたボックスを球体起点で動かすためのリギング作業】をやってみる。

--------------------------------------------------------------------------------------

●作業手順
1:作成→ポリゴンプリミティブ→立方体→チャネルボックスでスケール変更

画像1

2:作成→ポリゴンプリミティブ→球→チャネルボックスでスケール変更→移動で下記の形に

画像2

3:ウインドウ/アウトライナでアウトライナ表示→pCube1、nurbsSphere1の順に選択→Pを押す(ペアレント化)

画像3

4:pCube1を選択→チャネルボックスで移動から可視性まで選択→右クリックで選択項目のロック。球体以外を動かせなくする。

画像4

--------------------------------------------------------------------------------------

これでnurbsSphere1を親にした構造が出来上がった。
試しにnurbsSphere1を回転させてみるとpCube1もついてくる。
この構造のリギングである【コントローラーの完成】だ。

これだけでは視覚的なコントローラーは設置されていないので、その手順も記載する。

●作業手順
1:コントローラー原点をnurbsSphere1にスナップする為に空原点を作成する。
 アウトライナ上でctrl+Gでnullを作成→ ディスプレイ→トランスフォームディスプレイ→ローカル回転軸でオブジェクトを表示→nurbsSphere1を選択、Vを押しながら下方向へ→nullとピボットが合致。
2:上記のスクリプトを立ち上げ「square」をタップ。スケールをall5に。
3:先ほどロックしたpCube1の全項目を選択→右クリック、選択項目のロック解除。
4:controller1、pCube1、nurbsSphere1、null1の全てを選択→修正→トランスフォームのフリーズ。これでオブジェクトの座標系を0にする。
5:controller1、null1の順に選択→コンストレイント→ペアレントコンストレイント→オフセットの保持にチェック→適用。
6:controller1を選択→ウインドウ→一般エディタ→接続エディタで接続エディタを表示→null1を選択し右側のロードをタップ→controller1側のscaleXをタップ→null1側のscaleXをタップ→同様の操作をY,Zでも行いウインドウを閉じる。
7:null1、pCube1、nurbsSphere1の移動から可視性まですべてを選択しロック。

画像6

これで視覚化されたコントローラーの完成だ。
controller1以外のオブジェクトは触ってもトランスフォームは出来ず、コントローラーのみで移動と回転とスケールが可能。
今回はジョイントを使っていないためにスナップの工程が複雑化したが、原点を一致させるためには原点に当たるオブジェクトが必要になるのがわかればいい。

この工程は【ポイントコンストレイント】を使う事でも作業を圧縮可能。
その場合の方法は以下だ。

●作業手順
1:上記のスクリプトを立ち上げ「square」をクリック。スケールをall5に。
2:nurbsSphere1、controller1の順に選んで→メニュー/コンストレイント→ポイントコンストレイント□→オフセットの保持:オフ。コントローラーがnurbsSphere1にスナップ。その後アウトライナのcontroller1の+をクリック→controller1_pointConstraint1を削除。
3:先ほどロックしたpCube1の全項目を選択→右クリック、選択項目のロック解除
4:controller1、pCube1、nurbsSphere1、null1の全てを選択→修正→トランスフォームのフリーズ。これでオブジェクトの座標系を0にする。
5:controller1、null1の順に選択→コンストレイント→ペアレントコンストレイント→オフセットの保持にチェック→適用。
6:controller1を選択→ウインドウ→一般エディタ→接続エディタで接続エディタを表示→null1を選択し右側のロードをタップ→controller1側のscaleXをタップ→null1側のscaleXをタップ→同様の操作をY,Zでも行いウインドウを閉じる
7:null1、pCube1、nurbsSphere1の移動から可視性まですべてを選択しロック

ポイントコンストレイントは原点の情報を獲得したりスナップしたりと利便性が高い。
コンストレイント情報自体は上述のように用途に応じて消してしまってもよい。



■3:♯01まとめ

ペレントリギングと簡単なコントローラーの作り方を学んだ。
リギング作成は見た目のコントローラーを作ることが本質ではなく「仕組み」を作ることが本質だと覚えておきたい。
その為に一度「構造」が出来上がった時点で「完成」としている。コントローラーセッティングは最後でもよい。
ペアレントは「仕組みと仕組みもつなぐ」ので、リギングのメインであるコンストレイントを使う際、すべてをコンストレイントだけで考えずこの「ペアレント」を前提に考えるとうまくいくだろう。


次はリギングの基礎「IK」と「コンストレイント」についてまとめていきたいと思う。


●♯01注釈

1:オブジェクト入力はポリゴンの分割数を変えたりできるショートカットウインドウを呼び出す。チャネルボックスの入力欄でも確認可能。モデルありのリギングではあまり使わないが、操作を覚えていく過程では便利かもしれない。このウインドウはなんと移動回転スケールと同列の操作で、Wキーを押すとウインドウが消えるマニュピュレーター扱いなのだ。すごい仕様だな。
※2:オブジェクトにカメラフォーカスのショートカットであるAキーは「作業エリア全体をフォーカス」で、Fキーは「選択オブジェクトをフォーカス」。Aは大きいオブジェクトを編集してると便利だけど、リギング作業中この二つのキーは割と不便。
※3:Sのキーを打つ機能は、よくリグ操作中に誤入力でエラー要因になる。キーが打たれているオブジェクトはフリーズ等を行うときスクリプトウインドウに以下のエラーが出る。にっちもさっちもいかなくなったらこれを疑う。
※4:これも誤入力でオブジェクトが影も形もなく消滅してよく慌てる。アウトライナ上で半透明になっていると非表示なので、慌てずにアウトライナを確認。
※5:V+移動ツールは超使えるのだが罠もある。例えば球体の原点(中心)にピボットをスナップさせたい時無条件で使えると思いこんでしまうが、これはあくまで分割したポリゴンのポイントが中央位置にいてくれないとスナップできない。そういう時はオブジェクト同士をポイントコンストレイント。ジョイント系はいける。


●ヘルプ

・NURBSが選択できない

画像5

ここの可能性が高い。

・見えない項目をオープンにする

・なんかポリゴンの面が分割されたときの対処法


●参考
また本内容を学習するにあたって下記の書籍を教則として活用させていただいた。
読者諸氏もリギングに興味がある方は是非共購入をお勧めする。

表紙には国産フリーリグの最強moxrigを。ありがとうございます。


この記事が気に入ったらサポートをしてみませんか?