正義のもふもふ/Mofumofu of justice

3DCGやイラストなどを勉強しています。主にBlenderの機能に関しての作業進捗やメモなどを記事に書きます。Youtubeでアニメを投稿したりしています。

Blender2.92:グローバル座標とローカル座標ー軸・原点ー②

今回はこちらの記事の続きで、座標軸の実践編をまとめていきます。①の基本知識をまだ見てない方はこちらからお願いします。

yukke4198blog.com

 

座標や原点に関してはこの記事で終わりますが、今後は「ピボットポイント」や「ジオメトリ」などの概念についてもわかりやすくまとめていきたいと思っているので興味があれば閲覧してもらえればと思います。

 

 

座標を基準とした操作方法

前回の「グローバル座標とローカル座標」記事では、座標についてまとめました。が、

何言ってんだこいつって感じだったと思うので今回はもう少し嚙み砕いて実践を交えながらまとめていきたいと思います。

 

今回まとめるのは、「座標」に加えて「原点の使い方」と、前回記事でちらっと説明した「ジオメトリ」についても少しだけ紹介しようと思います。

 

・オブジェクトと原点の関係

・編集と軸

・モディファイアの操作基準・原点、座標

・アーマチュアと座標の向き

f:id:kitty_h:20210524232024p:plain

足型のオブジェクトを簡単に作りました。今回はこれを使って説明します。

オブジェクトと原点の関係

まず、前回の記事で説明した通り、オブジェクトモードと編集モードでは変形の基準となる軸が異なります。早速ですが、ここでジオメトリについて簡単に説明したいと思います。

 

ジオメトリとは、「オブジェクトの中心」です。ジオメトリも「オブジェクトの数だけ存在」することができ、ワールド内に複数存在することができます。

 

ジオメトリは原点とは違い、表示させることはできません。が、原点をジオメトリの位置に移動させることができます。下の画像のように選択することで移動させることができます。

 

個人的には原点の現在位置の確認や原点の移動を作業の経過途中で確認した方がいいんじゃないかなと思います。

 

編集モードで原点が遠く離れてしまい、オブジェクトモードでさらに回転させようとした場合、思うように動かせないという現象、初心者あるあるじゃないかなーと思います。

f:id:kitty_h:20210524234959p:plain

(オブジェクトが原点から離れている場合の回転)

f:id:kitty_h:20210524235012p:plain

余談になりますが、半年くらいこういう知識をスルーしながらモデリングしていたのでつい編集モードで移動させる癖がついてしまったため、筆者はマメに原点の位置を確認するようにしています。

 

ちなみに、「操作の基準とする場所」のことをピボットポイントと呼びます。ピボットポイントは選択した場所によって位置が変わります。頭の片隅に置いておくといいかなと思います。

 

モディファイアと操作基準

モディファイア等の機能を使う際に重要なのが原点の位置です。例えば、ミラーモディファイアは原点を基準としてオブジェクトをミラーリングします。

 

左半分を削除してミラーモディファイアを追加しました。原点がちょうどZ軸の位置にあり、モディファイアタブではX軸が選択されているのでX軸のマイナス側にミラーしたオブジェクトが作成されている状態です。

f:id:kitty_h:20210524235401p:plain

原点の位置を変えてみます。左側のツールバーからカーソルを選択して3Ⅾカーソルを適当な場所に移動させます。

f:id:kitty_h:20210525000219p:plain

Object>Ser origin>Origin to 3D Cursor(原点を3Dカーソルに)

これで原点を3Dカーソル位置に配置します。

 

すると、下の画像のように元のオブジェクト(右)から原点を中心にして等間隔の距離でミラーされていることがわかります。

f:id:kitty_h:20210525000438p:plain

ミラーがうまくいかない時は原点の位置を見直してみるといいと思います。

 

次に、ローカル座標を意識して操作する必要があるArrayモディファイアを紹介します。

Arrayモディファイアは過去記事でまとめているので詳しく知りたい方はどうぞ。

yukke4198blog.com

 このモディファイアは、複製配列の方法が3種類あり、そのうちの二つは長さに合わせて配列を行います。

 

「ローカル座標の長さを基準としてオブジェクトを複製配列する」ので、ローカル座標でオブジェクトを変形させる必要があります。

f:id:kitty_h:20210525160635p:plain

こちらがArrayモディファイアです。原点の位置にあるのが元のオブジェクトで、その隣はモディファイアによって生成されたメッシュになります。

 

(元のメッシュは1.3mほどあるのでその2倍の数値の2.6mの設定でオブジェクトが二つ生成される仕組み)

 

ローカル座標で編集、変形させるためにオブジェクトモードから編集モードにします。オブジェクトを全選択し、拡大してみます。

f:id:kitty_h:20210525160829p:plain

拡大していくとオブジェクトが減っていきます。これは、複製配列は2.6mの設定になっているため元のオブジェクトが1.3m以上になると2.6mは2倍の数値ではなくなるためになります。

 

もちろん縮小していくと複製は増えます。

 

さらに、これはローカル座標を基準にしてオブジェクトの拡大がされているため、次にグローバル座標でオブジェクトの拡大を行ってみます。オブジェクトモードにして拡大します。

f:id:kitty_h:20210525161735p:plain

複製されたメッシュも一緒に拡大されるだけでメッシュが減ったりすることはありません。

このように、Blenderにはローカル座標とグローバル座標を使い分けて操作する必要がある機能が存在します。

 

アーマチュアと座標

長くなってしまったので最後にアーマチュアについて少しだけ説明して終わろうと思います。

 

アーマチュアとは、アニメーションを作る際などにオブジェクトの中に設定する骨組みのようなものです。

f:id:kitty_h:20210525164615p:plain

こんな感じで適当にウエイトを付けて関節を作ってみました。ポーズモードで動かすことができます。

 

ボーンにも座標が設定されてありますが、デフォルトで表示されていないので下の画像の右下の[Axes]にチェックを入れて軸を表示させてみます。

f:id:kitty_h:20210525165141p:plain

f:id:kitty_h:20210525165330p:plain

軸を表示させるとこんな感じ。

 

先に、ボーンの座標は何に使うんだいって話なんですが、IKとかFKとか聞いたことありますでしょうか。Blenderでは、アーマチュアを組む際に便利な設定をすることができます。

 

例えば、

・〇〇ボーンを△方向に動かした際に□□ボーンが××方向に回転する

・〇〇ボーンを縮小すると△△ボーンが□方向に回転する

みたいな感じです。

 

この時に、「X方向に90度回転」という設定がしたいという場合、ボーンの向きが反対になっていることが原因で逆方向の「-90度回転」されたりするわけです。

 

なので、このような設定を活用したい場合はボーンの向きを適切にしておかなければなりません。

 

少しわかりづらいですが、上の画像に戻って見てもらうとX軸が前方向になっているのがわかるかと思います。

 

[Nキー]を押して変形(Transform)タブで上のボーンのX軸を動かしてみます。

f:id:kitty_h:20210525170701p:plain

[Rotation]の枠から、ボーンのX軸の値が0.7になっているのがわかるかと思います。そして、X軸が前を向いているため、左側に曲がってしまっています。

 

このボーンが選択されているまま編集モードに移ります。(ポーズモードで変形したボーンは[Alt+R (GまたはS)]で元の位置に戻すことができます。)

f:id:kitty_h:20210525171547p:plain

編集モードに移って[Roll]の欄を見てもらうと[-90°]になっているのがわかるかと思います。

 

この[Roll]の値を[0]にするとボーンが回転してX軸が横を向いてくれました。

f:id:kitty_h:20210525171932p:plain

下のボーンも回転させて適切な位置にしておきます。

f:id:kitty_h:20210525172655p:plain

 これでポーズモードに戻して[Rotation]のX方向の値を調節します。

f:id:kitty_h:20210525202157p:plain

これだとマイナス方向になっているので、さらにプラス方向に直しておきたいという場合は編集モードの[Roll]の角度を調節します。

 

最後に

これで今回の記事は終わりです。

 

ご指摘や説明不足な点があれば気軽に連絡していただければと思います。いろいろまとめているのでよければ他の記事もよろしくお願いします。

 

では、最後まで閲覧いただきありがとうございます。お疲れ様でした。

...