戦国時代で最大の対立というと関ヶ原の戦い。
立場の差で色々と変わるのは調べると面白いです。
どうも、クリーク・アンド・リバー社 COYOTE 3DCG STUDIO テクニカルチーム 戦国大好き人間の中林です。
TA視線から見たキャラと背景でのデータ作法の違い
ゲームの3Dモデルは大きく分けるとキャラと背景に分かれます。
意外とモデラーさんはそれぞれに特化するため、キャラは背景の作法を知らず、背景はキャラの作法に驚くということはよくあります。
TA(テクニカルアーティスト)だと、それぞれから頼まれごとがあるために横断して見ることがあります。
モデラーではないTAだからこそ見える、それぞれの似て非なる作法の違いについて取り上げます。
弊スタジオのメインツールの関係でMayaが主な話題になります。
あくまで弊スタジオで感じたことであり、業界全体ではまた別の作法があると思います。
Mayaのヒストリーの扱いの差
キャラと背景の一番大きな差としてモーションのためのジョイントの有無がありますが、それだと当たり前すぎるので、それに付随して発生するMayaのヒストリーについての差を挙げます。
Mayaのヒストリーは色々な作業で発生してしまいます。
モデリング中ならキャラでも背景でも消してしまって大丈夫です。
ただし、キャラクタはウェイトを設定するとskinClusterができてしまいます。
こちらはヒストリーの削除で消えてしまいます。
ならば、デフォーマ以外のヒストリの削除と思うけど、そうすると消したいTweakが消えないというジレンマが残ります。
僕は主にツールを作成するTAだけど、背景に頼まれるツールは処理の最後にヒストリを消してと頼まれます。
ただ、キャラに頼まれるツールはヒストリーを消さないでくれと頼まれます。
ちなみにTAとして受け取るキャラの本音は、キレイにヒストリーを消してほしいということです。
ツールの中に組み込むのは高度ですが、独立してキレイにヒストリーを消すツールを用意することは簡単です。
弊スタジオではこんなツール『Skin Duplicate』を用意してます。
こちらのツールはBoothにて無料で頒布しています。
わずか1クリックでウェイト付きのキャラのヒストリーや中間オブジェクトをキレイにできます。
Booth Coyote Skin Duplicate
興味のある人は無料なのでBoothからダウンロードしてみてください。
Mayaの同名オブジェクトの扱いの差
Mayaは基本的には同名のオブジェクト名を許しません。
しかし、アウトライナーなどで階層が違うと許されることが多いです。
こちらはとあるキャラのジョイントモデル名の例です。。
階層が違っても同名があることは仕様でほぼありません。
portTownXXグループは木箱の上に樽や瓶が載っているイメージです。
woodbox01やBarrel01などがグループごとにあります。
組み合わせを複製して、オブジェクトの位置を細かく変更することが多いです。
最終的にはportTownやforestごとにオブジェクトを結合することもあれば、このまま出荷することもあります。
この階層が曲者で、スクリプトでwoodbox01を選択しようとすると複数のオブジェクトで名前が一致するのでエラーが出てきます。
cmds.select("woodbox01")
# エラー: ValueError: file <maya console> line 1: 複数のオブジェクトが名前と一致します: woodbox01
これを回避するためにはフルパスで指定する必要があります。
cmds.select("BG01_Port|portTown01|woodbox01")
selectList = cmds.ls(sl = True, long = True)
meshList = cmds.listRelatives(selectList fullPath = True, type = "mesh")
あわせて書いたけど、lsコマンドやlistRelativesコマンドを使うときもフラグを使ってフルパスでで取得することを心掛ける必要があります。
毎度のお約束だけど、なんでこの2つのコマンドでフラグがlong(l)とfullpath(f)で違うんだろう……。
紛らわしいので統一して欲しいな……。
ここで重要なのは、階層が違っても名前を許容しているのはMayaの仕様です。
Unityなどのエンジンは階層が違っても同じ名前を許容しません。
Mayaのデータで名前が重複していたら、すべて変更して同名で被らないようにする必要があります。
こんな時に便利なツール『Coyote Auto Same Name Renamer』をBoothにて無料で頒布しています!!
複製した際によく発生するオブジェクト名の重複を、命名が被らないよう自動的に連番へ変更。手軽にオブジェクト名の重複が解消できます!!
こちらも無料なので良かったらBoothからダウンロードしてみてください。
まだまだ他にもあるので続きます
今回の作法の違いはほんの一部です!!
僕が知っているだけでも1回では書ききれないほどあります。
今日も背景モデラーにツールを説明するときに「この機能はキャラモデラーのためにあります」と話したら驚いていました。
なので、この話はシリーズ化して、まとまった時に続きを書こうと思います。
TA視点だからこそ分かるキャラと背景のモデラーの作法の違いの次回を楽しみにしていてください。
では皆さん、アテブレーベ・オブリガード(また逢いましょう。お元気で)