web-dev-qa-db-ja.com

.usdzアニメーションを作成するには?

Xcode 10ベータにバンドルされているAppleのコマンドラインツールを使用して、3Dモデルを.usdzファイル(非圧縮Zipアーカイブ)に変換できるようになりました。

.objファイルを.usdzに変換するコードの例:

xcrun usdz_converter magnifying_glass.obj -g frame magnifying_glass.usdz 
-color_map gold-basecolor.png -normal_map gold-normal.png
-roughness_map gold-roughness.png -metallic_map gold-metallic.png

次の入力3Dファイルタイプがサポートされています。

  • OBJファイル
  • シングルフレームAlembic(ABC)ファイル
  • USDファイル(.usda(ascii)または.usdc(バイナリ))

私の理解では、OBJファイルはネイティブでアニメーションをサポートしていません。

単一フレームのAlembicファイルは、単一フレームとしてのアニメーションもサポートしません。

したがって、アニメーションを生成するには、単一フレームのAlembicまたは単一フレームのOBJファイルのシーケンスにリンクするusdaファイルを使用する必要があると思います。

これに対処する方法についての公開ドキュメントはありますか?

Usdaファイルは、ペイロードファイルを使用して単一フレームメッシュを参照できます。以下の例は、Treasure Chestの単一フレームのalembicファイルジオメトリを参照しています。

#usda 1.0

def "Chest_Base" (
     references = [ @./Chest.abc@</Chest_Base> ])
{

}

しかし、一連の.objまたはシングルフレームのアレンビック.abcファイルをリンクして、たとえば10秒のアニメーションを作成する具体的な方法は見つかりませんでした。

ヘルプやヒントをいただければ幸いです。

6月30日を編集:

USDZファイルをアニメーション化することができました。回転ギアとヘリコプターの ライブデモ があります。

基本的には、githubからusdパイプラインをダウンロードしてMacでビルドする必要がありました。あなたはそれを行う方法についての良い指示を ここ から得ることができます

少なくとも数時間は確保しておいてください。ビルド自体には約1時間かかります。

その後、usdパイプラインバンドルで アニメーションチュートリアルの例 を実行しました。 Step5.usda(ascii usdファイル)には、回転を使用して独自のアニメーションを作成するために使用したアニメーションの例があります。

上記のリンクのpixarチュートリアルに従ってStep5.usdaファイルを作成すると、このusdzコマンドを実行すると、回転するコマの簡単なアニメーションが作成されます。

xcrun usdz_convertor Step5.usda animationTest.usdz

2018年7月10日を編集:

usdzは、アニメーション付きのalembicアセットもサポートしています。

これで、usdzで簡単なアニメーションを(なんとかalembicファイル形式を使用して)動作させることができました。しかし、試したキャラクターのボーンアニメーションが機能しませんでした。

AlenderアセットをBlenderとModo Alembicの両方のエクスポーターでエクスポートしました...同じ結果です。

UVマテリアルもメッシュに正しくマッピングされていませんでした。 UVのスケーリングとマッピングに問題があります...マテリアルが断片化して出てきます。この段階では、これがバグなのか、ここで問題が発生していないのかはわかりません。 Appleフォーラム でこのUVマッピングの問題についての議論があります。

2018年9月8日を編集:

これは急速に進化している分野であり、usdzアニメーションの作成に取り組むためのより多くの方法が時間の経過とともに現れると確信しています。ただし、現在、変換、ボーン、ブレンドシェイプ、またはモーフアニメーションのusdzファイルを作成するための最良かつ最もコストのかからない方法(オープンソース)は、GitHubでホストされているコマンドラインツール glTF2usd を使用しています。

このツールは、usdzファイルを作成するために、glTFアニメーションファイルをusdaファイル(中間ファイルタイプ)に変換できます。また、usdzの直接作成をサポートし、usda-> usdzからAppleのusdz_converterコマンドラインツールを使用する必要をなくします。

現在、1つのアニメーショングループのみをサポートしています。回転に関するいくつかのバグがまだ存在しています。--use-euler-rotationハンドルを使用すると、回転をスムーズにすることができます。

このツールで作成したusdzアニメーションをオンラインのusdzギャラリーに投稿しています www.fusionar.app

9
Clay

それだけで動作します!

enter image description here

MacOSでAlembicファイル形式を使用するのは、本当に大変なことです。しかし、私は自分の方法を開発しました。したがって、MacのAutodesk Mayaで3Dモデルをアニメーション化します(バージョン2016 Extension 2 SP 1)。次に、以下を使用してアニメーション/ダイナミクスをベイクします。

Edit ->  Keys -> Bake Simulation

AlembicモジュールがUIに存在するかどうかを確認します。

Windows -> Settings/Preferences –> Plug-in Manager -> AbcExport.bundle

その後、次の場所に移動します。

Cache –> Alembic Cache -> Export All to Alembic...

このコマンドを使用すると、abcファイルを作成できます。再生は本来の25倍遅くなりますが、Xcodeで修正できます。それでは、ターミナルアプリでXcode 10コマンドを使用してアニメーションを変換します。

xcrun usdz_converter ~/Desktop/sphere.abc ~/Desktop/anime.usdz -v

enter image description here

同じ再生速度(25倍遅い)のusdzファイルを取得します。

enter image description here

Xcode 10でその再生速度を修正しましょう。プロジェクトを作成し、usdzファイルをドラッグアンドドロップして、Show the Scene Graph View pictoをクリックし、シーンの階層からアニメーションオブジェクトを選択します(私の場合はpSphere1)。 Node Inspectorタブで、Speedプロパティを1から25に変更します。この数値は、実際にはアニメーションソフトウェアのフレームレート設定(24fps、25fps、30fpsな​​ど)によって異なります。

enter image description here

それでおしまい。

enter image description here

また、Jimmy Gunawanが公開 この画面キャプチャされたBlenderビデオ が2018年7月31日に公開されました。このビデオエピソードでは、 Alembicを介して.usdzの変換アニメーションをエクスポートするプロセス全体。彼は、Animation Nodesを使用して作成された多くのオブジェクトの手続き型変換アニメーションを持ち、iOS 12内の拡張現実のためにアニメーション3D .usdzファイル形式としてエクスポートされています。

基本的に.usdzアニメーションでは、正しくエクスポートするために、ルートまたはnullオブジェクトが必要です。ジミー・グナワンのビデオを見てください。

enter image description here

また、次のプロフェッショナル3Dツールを使用して、コンピュータアニメーションを.usdzファイル形式でエクスポートできます:Autodesk MayaThe Foundry KatanaorSideFX Houdini。詳細については このPixarのWebページ をご覧ください。

1
ARGeo