MultiverseでUSDファイルを作成する方法
この記事は、Qitta Advent Calendar 2021 Universal Scene Description 11日目の記事です。
皆さんはMayaでUSDを取り扱っていますか?Maya2022から、MayaUSDが標準搭載されて、素人でもよりUSDが簡単に取り扱えるようになりました。USDはレイヤーやリファレンスで別のファイルを合成したり、マテリアルを保存できたり、Hydraでいろんなレンダラーでプレビューできたりとめちゃくちゃ便利です。しかし、バリアントが使えなかったり、アニメーションに対応していなかったりといろいろと不便なところがあります。そこで今回Multiverseというツールを紹介したいと思います。
Multiverseとは
Multiverseはポリゴンピクチャーズの子会社JCubeが開発したMayaでUSDを管理するツールです。Free版とPro版が存在し、Free版は無料で使用できます。(120日毎にライセンスを更新する必要がある)Maya2020までに対応し2022はまだ未対応です。Free版はSlackにてサポートがされています。
公式サイト
※2022年5月8日追記
正しくはJCubeはポリゴンピクチュアズの子会社ではなく独立した会社です。私の情報不足により誤った情報を発信してしまい申し訳ありませんでした。
対応レンダラー
Arnold
RenderMan
3Delight
Redshift
VRay
Maya USDでできること
USDのインポート、エクスポート
USDをMayaオブジェクトとして読み込む
レイヤー、リファレンスの構築
Maya USDでできないこと
バリアント作成
マテリアル割り当て(Mayaオブジェクトに変換しないで)
USDSkelに割り当てられたアニメーションの読み込みと出力
usdview
usdzの入出力
Hydra Delegate(Arnoldは対応している)
Multiverse USDでできること
USDのインポート、エクスポート
USDをMayaオブジェクトとして読み込む
レイヤー、リファレンスの構築
バリアント作成
マテリアル割り当て(Mayaオブジェクトに変換しないで)
USDSkelに割り当てられたアニメーションの読み込みと出力
usdview
usdzの入出力
Hydra Delegate(Stormと3Delightのみ)
インストール方法
以下のページから「Download」を選択する
ダウンロードページOSを選択し「Donwload」を選択する
ダウンロードページに戻って「Free License」を選択する
メルアドを入力して「Send Active Link」を選択する
インストローラーを開き、手順に沿ってインストールする
メールボックスをチェックし、「license active link」を選択する
「free license key」をダウンロードする。「mv-license-key.txt」ファイルがダウンロードされる。この時名前は変えない。
Multiverseがインストールされているディレクション(Windowsだったら C:\Multiverse\Multiverse-6.4.0)にダウンロードしたライセンスキーを移動する。
USDの読み込み方法
MultiverseシェルフからRead USD/Alembicを選択する
開きたいUSDファイルを選択する
MELOWを選択します。USD内に存在するオブジェクトの階層を見ることができます
シェーディングモード
USDの出力方法
出力したいオブジェクトを選択する。
MultiverseシェルフからWrite USD Assetを選択する
ファイル名、形式などを指定し、保存する。
USDの出力方法(サブレイヤー、リファレンスを指定する場合)
Read USD/AlembicでUSDファイルを読み込み、適当な位置に配置する
配置したUSDファイルをグルーピングする
USDファイルをネストしたグループを選択しMultiverseシェルフからWrite USD Compositionを選択する
ファイル名、形式などを指定する
USDの出力方法(オーバーライド)
USDを読み込みます
MELOWを表示してオーバライドするオブジェクトを右クリックしAdd Transform overrideを選択。これで特定のオブジェクトをトランスフォームでき利用になりました(ビューポートでオブジェクトを選択し、マーキングメニューからでも選択可能)
ロケーターを移動させ適当にトランスフォームします。
USDファイルを選択しWrite USD overrideを選択します
Read USD/Alembicで元となるファイルを選択します
アトリビュートエディタを開きレイヤータブからRead Assetアイコンを選択します
先程作成したファイルを選択します
オーバーライドされていることが確認できます。
マテリアルアサイン
あらかじめマテリアルを作成しときます。
MELOWを開きます
アサインさせたいオブジェクトを右クリックします
Assign(Material)>Exsistingから作成したシェーディンググループを選択します。するとmatの下に緑の丸が出てくると思います
これでマテリアルがアサインされました。再度、オブジェクトを右クリックしInspecting Materialsを選択すると、マテリアルのアトリビュートエディタが表示されます。
バリアント作成方法
バリアントするオブジェクトをrootグループの中にネストする。
rootグループを選択した状態でvariantを選択しdefine variant setを選択
variant set name でバリアントセットの名前を指定しdefault variantでデフォルトとなるバリアントを指定しOKを選択して作成する。これでバリアントセットを定義できました
グループ内に存在するオブジェクトを選択しvariant からcreate hierarchy variantsを選択します
variant setでバリアントセットを指定し、右のノートとペンのアイコンを選択します。するとvariant nameが指定できるようになります。各オブジェクトのvariant nameを指定しOKを選択する。
USDファイルを作成します。詳しくは上記を参照
作成したUSDファイルを読み込みます。
MELOWを表示し、rootのvarの部分を右クリックし、variant setからvariantを選択します。
おわり
私はMaya2022が登場する前からこのMultiverseを使用していました。前に、USDのビルドを試したことがあるのですが、超難しく挫折したことがあるので、簡単にUSDを作成できるこのツールには感謝しかありません!Maya2022が登場してからは使うのをやめようかと思いまいたが、2022ではできないことが結構Multiverseではできたりしたので、今でもたまに使用しています。Maya2022のUSDがポンコツな限り、Multiverseはまだ需要があると思いますのでぜひ、使ってみてください!
お知らせ
私事になってしまいますが、SIGGRAPH Asia 2021の学生ボランティアになりました。
今年のSIGGRAPHはフィジカルとオンラインで開催され、東京にいなくても参加することができるプログラムも存在します。
SIGGRAPHは12月14日から17日まで東京国際フォーラムとオンラインで開催されます。お時間があればぜひお越しください。
この記事が気に入ったらサポートをしてみませんか?