チュートリアル / 製造業界向けビジュアライゼーション~3ds Maxで設計データをリアルに魅せよう~
第5回:アニメーション編 その②
- 3ds Max
- アニメーション
- キャラクター・リグ
- コラム
- チュートリアル
- 学生・初心者
- 建築・製造・広告
皆さんこんにちは。オートデスクの吉田です。
前回アニメーション設定を簡単にするための仕組みについてご紹介いたしました。
今回はそれら仕組みを使いながら、実際にアニメーションをつけていきたいと思います。
具体的には以下の動画に使われているアニメーションをいくつか抜粋してご紹介していく予定です。
こちらの動画では、
① カートに運ばれた鉄板を
② ロボットアームがベルトコンベアにのせて
③ 進んだ先で別のロボットアームが鉄板をレーザーカッターで切断する
といったアニメーションが設定されています。
ですので、まずはカートとロボットアームの3Dモデルにアニメーションを簡単につけられるような仕組みを割り当てていこうと思います。
ちなみに、モデルを任意の機構に沿って動かすための一連の仕組みをリグと呼びます。
このリグという言葉はこの後も何度か出てきますので、覚えておいていただければと思います。
リグを作成した後、鉄板がカートやロボットアームに運ばれるアニメーションや、レーザーカッターが任意の軌道に沿って動くようなアニメーションを作っていきます。
それでは早速作業していきましょう!
単位設定
今回のプロジェクトにおいて、3ds Maxでの作業で一番初めにやる必要のあることが単位設定です。
今回は、カートやロボットアームをそれぞれのMaxファイルで編集し、最終的に一つのMaxファイルに合成して使用します。
そういったプロジェクトを運用する場合、それぞれのMaxファイルで使用する単位は同じ単位にしておいたほうが、後々の合成作業などがスムーズになります。
また、単位設定は実数式コントローラに入力する数値に影響を及ぼしたり、ビューポート上の見え方も変わってきたりします。
そのあたりも考慮して採用する単位を決定するのがいいでしょう。(単位設定によって発生する影響に関してはこちらをご参照ください。)
今回、3ds Maxのシステム単位は「cm」を採用したいと思います。
どの単位を採用するかは好みによって異なるかとは思いますが、個人的には工場全体のラインを表現するような広範囲なシーンは「m」、今回のような一区画分くらいの範囲であれば「cm」、より小さいシーンであれば「mm」といったように変更するのがいいかと思います。
カートのリグ
システム単位を設定したら、カートのリグを作っていきたいと思います。
リグを作る前に、まずは今回制作する動画内でこのカートがどのように動くのか確認しましょう。
例えば、動画内でタイヤが映らないのに、タイヤが自動的に回転するようなリグを作ってもあまり意味をなしません。
どういったリグを作るのがいいのか判断するためにも、動画の構成やモデルの動きを事前に把握しておくことは重要と言えるでしょう。
今回、このカートに必要な動きは、
・前進する
・天板が上昇する
といった動きとなります。
なので、カートに関しては「カート全体を動かすダミー」「天板を上下させるダミー」の2つのダミー オブジェクトでアニメーションを制御しようと思います。
カート全体の動きに関してはあまり難しく考えず、まとめて動かしたいものを全てダミーにリンクさせるような考え方で基本的には大丈夫です。
天板は3つのフレームの動きによって上下に移動するのですが、移動の際、それぞれのフレームが均一に見えるように動くものとして、リグを作成していきます。
このリグを作る際に、前回ご紹介した実数式 コントローラなどを使用するのですが、今回はその他にもワイヤ パラメータを使用した作業方法なども解説していきたいと思います。
詳しくは以下の動画からご確認いただければと思います。
ロボットアームのリグ
次にロボットアームのリグを作っていきます。
今回ロボットアームにおいては、
・ヘッドの先端部分のダミーを動かすとアーム全体が動く
・ヘッドの手前のアームは常に地面と平行に動く
などの条件のもとリグを作っていきます。
ここでは、前回ご紹介したコンストレイントやIKが大いに役立ちます。
また、根元付近の配線に関してはボーンとスキニングで動きを制御します。
製造業向けのアニメーションでは、アニメーションを設定する対象が機械であることがほとんどなので、配線やホースのようにジオメトリ自体が変形するような動きへの対応は無視されがちです。
ですが、このような有機的な動きに少し気を配るだけでも映像にリアリティが増し、説得力のある作品を作ることができます。
今回の配線に関しては、そこまで大変な作業にはなりませんので、ぜひ一度チェックしておいていただければと思います。
ロボットアームのリグ作成に関する動画は以下よりご確認いただけます。
鉄板を運ぶアニメーション
各モデルのリグができたので、ここからは実際に動きをつけていきたいと思います。
まずは鉄板が運ばれていくアニメーションです。
最初の動画では鉄板はカートに乗った状態で、その後ロボットアームによってベルトコンベアに乗せられて…といった流れで運ばれているかと思います。
このように、何かに乗せられたり掴まれたりして動くようなアニメーションを作るときには、リンク コンストレイントが非常に便利です。
リンク コンストレイントはオブジェクト間に親子関係を築き、任意のタイミングで親(リンク ターゲット)を変更することができます。
なので、鉄板にリンク コンストレイントを設定し、リンク ターゲットをカートが進んでリフトが上昇するまではカート、ロボットアームに運ばれている間はロボットアームとすれば鉄板自体に移動や回転のアニメーションを設定する必要はありません。
具体的な作業方法に関しては以下の動画で解説しますので、そちらをご覧ください。
レーザーカッターのアニメーション
大抵の場合、レーザーカッターは事前に決めた軌跡に沿って移動するかと思います。
そのようなアニメーションを作成するにはパス コンストレイントを活用しましょう。
レーザーカッター(ロボット アーム)の先端にあるダミーにパス コンストレイントを設定し、ターゲット パスに事前に作成しておいたラインを割り当てれば、あとはキーのタイミングを操作するだけです。
ただ、それだけではレーザーカッターらしさが伝わらないので、今回は火花の表現も追加したいと思います。
前回のコラムで、3ds Maxには色々なエフェクト用の機能があるとご紹介しましたが、今回はパーティクル システムを利用して火花を表現します。
今回は3ds Maxに標準搭載されているParticle Flowを使用しますが、3ds Maxで使用できるパーティクル システムの中には他にもtyFlowなど、サードパーティ製のプラグインを活用することもできます。
より詳しく知りたい方は、AREA JAPAN内のコラム「3ds Maxではじめるエフェクト制作」(著者・株式会社トリプルアディショナル 小張泰洋さま)なども是非一度ご覧ください。
レーザーカッターのアニメーションに関しては、以下の動画で解説させていただきます。
まとめ
アニメーションの解説に関しては以上となります。
リグの作成やアニメーションの設定は慣れるまでは大変かもしれませんが、これができているのといないのでは、その後の作業効率が全然違いますので、ぜひ一度チャレンジしてみてください。
次回はレンダリングに関して解説していきます。
おそらく最終回になるかと思います。
ノイズを少なくレンダリングする方法や、カメラごとにレンダリングする方法などを解説していきたいと思います。
ぜひ次回もお付き合いください!
まとめ
今回もダウンロードファイルをご用意しています。
ファイルがいくつかあるので、簡単にご説明いたします。
・AutoCar_org.igs
・RobotArm_org.igs
この2点はリグを作成する前のカート、ロボットアームのigsファイルです。
こちらを3ds Maxに読み込んで、リグ作成を試していただければと思います。
・AutoCar_Rigged.max
・RobotArm_Rigged.max
この2点はすでにリグが設定されたMaxファイルです。
動画で解説しているリグの完成形を確認したいときにご利用ください。
・IronPlate.max
鉄板を運ぶアニメーションが設定されたMaxファイルです。
動画で解説しているアニメーションの完成形を確認したいときにご利用ください。
・LaserCutter.max
レーザーカッターのアニメーションが設定されたMaxファイルです。
動画で解説しているアニメーションの完成形を確認したいときにご利用ください。