USD Stage Editor クイック スタート

USD Stage ワークフローと USD データのに使用に関するチュートリアルです。

Windows
MacOS
Linux

Unreal Engine では、USD Stage Actor と USD Stage ワークフローを通じて USD をサポートしています。このクイック スタート ガイドでは次の項目について説明します。

  • USD Stage Actor を作成する。

  • [USD Stage] ウィンドウを使ってプロパティを編集する。

  • 新規プリミティブを USD Stage Actor に追加する。

  • データを USD ファイルに書き戻す。

  • シーケンサーを使って USD アニメーションにアクセスする。

  • アセットを Unreal Engine プロジェクトにインポートする。

作業を進める前に、プロジェクトで USD Importer プラグインを有効にしておく必要があります。詳細については、「USD インポート プラグインを有効にする」を参照してください。

前提条件のトピック

このページでは、次のトピックに関する知識があることを前提としています。まず、次のトピックの内容を確認してください。

このチュートリアルでは、Pixar の Kitchen Set USD ファイルを使用します。Pixar では、学習とデモの目的で USD サンプル ファイルの小規模なライブラリを提供しています。Kitchen Set サンプルやその他のサンプルは、こちら からダウンロードしてください。

1. USD Stage Actor を作成する

USD コンテンツでの作業を開始するには、[USD Stage] ウィンドウを開きます。

[USD Stage] ウィンドウ。

  1. Unreal Editor で [Window (ウィンドウ)] メニューをクリックし、[USD Stage] を選択します。

    [USD Stage] ウィンドウをビューに加える。

  2. USD Stage Editor のウィンドウで [File (ファイル)] > [Open (開く)] をクリックし、目的の USD を選択します。

    [USD Stage] でファイルを開く。

階層を示すセクションが更新され、読み取り中の USD ファイルからのシーン階層が表示されます。

Kitchen Set のコンテンツが表示された [USD Stage] ウィンドウの階層セクション。

Unreal Engine で開くそれぞれの USD ファイルには、USD データのアンカーとして機能する独自の USD Stage Actor が必要になります。上記のプロセスでは、レベル内に USD Stage Actor が自動的に追加されます。

[Place Actors (アクタを配置)] パネルを使って USD Stage Actor を追加し、[Details (詳細)] パネルの [Root Layer (ルート レイヤー)] オプションを使って関連する USD ファイルを選択することも可能です。

2. [USD Stage] ウィンドウを使ってプロパティを編集する

USD Stage Editor ウィンドウのプロパティ セクションを使用して、USD Stage Actor とプリミティブのプロパティを編集できます。

[USD Stage] ウィンドウのプロパティ セクションを使ってプリミティブのプロパティを編集する。

USD Stage Actor の UpAxis を変更する

  1. [USD Stage] ウィンドウで、階層のトップ レベルにある Stage をクリックします。

    階層のトップ レベルにある Stage オプションを選択する。

  2. プロパティ セクションで upAxis プロパティを見つけ、ドロップダウン メニューを開きます。USD データの上方向を示す軸を新たに選択します。

    USD データに最適な軸を選択する。

プリミティブのバリアントを変更する

  1. USD Stage Editor の [Options (オプション)] > [Selection (選択内容)] メニューを開き、[Synchronize with Editor (エディタとの同期)] を有効にします。こうすることで、Unreal Engine のレベルと USD Stage Editor ウィンドウの選択内容が同期されます。

    [Synchronize with Editor] を有効にして、[USD Stage] と Unreal Engine のビューポートの選択内容を同期する。

  2. 階層セクションで Kitchen_Set の隣にあるドロップダウン矢印をクリックします。次に Props_grp の隣のドロップダウン矢印をクリックして、シーン内の小道具 (Props) を表示します。

  3. DiningTable_grp エントリを展開し、ダイニング テーブルと椅子の個々のプリミティブを表示します。オレンジ色で表示される小道具は 合成された円弧 であり、それらの任意のプリミティブを右クリックして参照を追加 (またはクリア) することができます。他の右クリック アクションには、プリミティブを追加または削除する機能や、ペイロードを切り替え、ロード、またはアンロードする機能があります。

  4. ChairB_1 を選択して、プロパティ セクションに表示されるプロパティを確認します。ここでは次の項目を編集できます。

プロパティ

説明

name

選択されているアセットの名前を示します。

path

選択されているアセットのパスを示します。

kind

選択されているアセットのタイプを定義します。

  • assembly:モデルのコレクションです。

  • component:サブコンポーネントを含むモデルの種類です。

  • group:アセンブリ内のモデルのコレクションです。

  • model:種類の基本タイプです。アセットはコンポーネントとグループを区別するための「抽象的な共通性」を持つものであるため、その種類をモデルに設定すべきではありません。詳細については、Pixar USD ドキュメントの「Model Hierarchy」セクションを参照してください。

  • subcomponent:コンポーネント内のプリミティブです。モデルのタイプではありません。

purpose

ロードする初期の Purpose を指定します。USD Stage Actor と整数値を入力として使用します。

オプションは次のとおりです。

  • default

  • proxy

  • render

  • guide

visibility

ロードする初期の Purpose を指定します。USD Stage Actor と整数値を入力として使用します。

オプションは次のとおりです。

  • inherited:親から可視性を継承します。

  • invisibile:プリミティブと、そのサブツリーに含まれるあらゆるプリミティブはレンダリングされません。

xformOp:rotateZ

選択されているアセットの Z 回転を定義します。

xformOp:translate

アセットの X、Y、Z の位置を定義します。

xformOpOrder

アセットにトランスフォーム操作が適用される順序を示します。

modelingVariant

シーン内で表示されている現在のバリアントを定義します。対象のアセットにバリアントが含まれる場合のみに表示されます。

References

対象のプリミティブにアタッチされているすべての参照を表示します。

  1. このシーンの椅子には ChairAChairB という 2 つのバリアントが含まれています。ChairB_1 を選択した状態でプロパティの [Variants ] セクションを確認し、[modelingVariant]ChairA に変更します。これにより、シーン内で使用される椅子メッシュがこの新しいバリアントに自動的に置き換わります。

3. 新規プリミティブを USD Stage Actor に追加する

プリミティブは、右クリック メニューを使って階層に追加したり、階層から削除したりできます。プリミティブが追加されると、そのプロパティをプロパティ セクションで編集できるようになります。

新しい椅子を Kitchen Set に追加する

  1. 階層内で DiningTable_grp エントリを右クリックし、メニューから [Add Prim (プリミティブを追加)] を選択します。この新しいプリミティブに「ChairB_3」と名前を付けます。

    新しいプリミティブを [USD Stage] に追加する。

  2. 階層内で新しいプリミティブをクリックします。[Details] セクションで [kind] 設定を [component] に変更します。

    新しいプリミティブのプロパティを変更する。

  3. 椅子をステージに取り込むために、その USD ファイルを参照します。階層内で ChairB_3 を右クリックし、[Add Reference (参照を追加)] を選択します。Kitchen Set のファイルがある場所に移動します。「assets」 > 「Chair」 フォルダを開いて「Chair.usd」 を選択し、[Open (開く)] ボタンをクリックします。

    参照を USD データに追加する

    ファイルの選択画面で椅子のデータを選択する。

  4. これで新しいプリミティブが椅子の USD データを参照し、ChairA バリアントが表示されるようになります。これはレベルの原点にあります。階層内で ChairB_3 を選択し、[modelingVariant] を ChairB に変更します。

  5. ビューポート内で新しい椅子をクリックし、トランスフォーム ツールを使って椅子を机の近くに配置します。

4. データを USD ファイルに書き戻す

USD Stage Actor を使って加えた変更は、[Save (保存)] オプションを使って USD にファイルに書き戻すことができます。

USD Stage Editor ウィンドウの [Save] オプションを使って変更を USD ファイルに書き戻す。

これらの変更を USD ファイルに書き込むには、[USD Stage] ウィンドウの [File] メニューを開き、[Save] オプションを選択します。

5. シーケンサーを使って USD アニメーションにアクセスする

USD アニメーションにアクセスする

USD ファイル内に格納されているアニメーションには、USD Stage Actor によってスポーンされた専用のレベル シーケンスを使ってアクセスできます。

  1. [World Outliner (アウトライナ)] でリストから USDStageActor を選択します。

    [World Outliner] 内で USD Stage Actor を見つける。

  2. [Details] パネルの [USD] セクションにある [Level Sequence (レベル シーケンス)] で、アセットをダブルクリックしてシーケンサーを開きます。

    [Details] パネルでレベル シーケンスをダブルクリックする。

シーケンサの詳細については「シーケンサー エディタ」を参照してください。

椅子をアニメートする

手順 3 で作成した新しいプリミティブ ChairB_3 にアニメーションを追加するには、新しい USD ファイルを作成して、これをレイヤーとして USD Stage Actor に追加します。

  1. 新しいアニメーションは新しいレイヤーに追加する必要があります。新しい USD レイヤーを作成すると、新しい USD ファイルが作成されます。[USD Stage] ウィンドウの [Layers (レイヤー)] セクションで kitchen_set.usd レイヤーを右クリックし、[Add New (新規追加)] を選択します。

    アニメーションのために新しいレイヤーを USD データに追加する。

    この新しいファイルに「myanim.usda」と名前を付けて保存します。

  2. USD レイヤーでは LIVRPS 構造 を使用して、レイヤーがシーンの最終的な構成にどのような影響を及ぼすかを判断します。アニメーションによって Kitchen Set に影響を与えるには、レイヤー構造において、当該のアニメーションを含むレイヤーがそのプリミティブを含むシーンよりも上位にある必要があります。[Place Actors] パネル内で USD Stage Actor を見つけて、その新しいコピーをレベル内にドラッグします。

    [Place Actors] パネル内の新しい USD アクタ。

  3. [World Outliner] 内で USD Stage Actor を選択し、[USD Stage] ウィンドウの [File] メニューから「myanim.usda」ファイルを開きます。

  4. myanim.usda レイヤーを右クリックして [Add Existing (既存項目を追加)] オプションを選択し、Kitchen Set をレイヤー スタックに追加します。ファイルの選択画面で「kitchen_set.usd」ファイルを選択し、[Open] をクリックします。

    既存の USD データを使って新しいレイヤーを追加する。

  5. アニメーションを追加する前に、USD Stage に当該アニメーションの長さを伝える必要があります。階層内で Stage プリミティブをクリックします。プロパティ セクションで [endTimeCode (終了時間コード)][endFrame (終了フレーム)] の値をそれぞれ「48」に変更します。

    endTimeCode プロパティと endFrame プロパティを変更する。

  6. [World Outliner] で新しい USD Stage Actor を選択し、[Details] パネルの [Level Sequence] を開きます。

  7. [Sequencer (シーケンサー)] パネルで [+ Track (トラックを追加)] ボタンをクリックし、アニメートするアクタを [Actor to Sequencer (アクタをシーケンサーに追加)] サブメニューから選択します。

    選択されているアクタの新しいトラック グループを追加する。

  8. 新しいトラックの [Add (+)] ボタンをクリックし、新しい トランスフォーム トラックを作成します。

    新しいトランスフォーム トラックを追加する。

  9. 適切な位置での椅子の回転をアニメートします。シーケンサーでのトラックの詳しい使用方法については、「トラック」を参照してください。

    ヨー回転トラックをアニメートする

  10. [USD Stage] ウィンドウの [File] > [Save] メニューを使って、データを USD に書き戻します。

6. アセットを Unreal Engine プロジェクトにインポートする

USD Stage Actor に表示されるアクタは、次の方法のいずれかで Unreal Editor のコンテンツ ブラウザにインポートできます。

  • [File] > [Import Into Level (レベルにインポート)] を使用する。このプロセスでは、アセット (静的メッシュ、骨格メッシュ、マテリアル、テクスチャなど) とアクタの両方がインポートされます。

  • コンテンツ ブラウザ[Add/Import (追加/インポート)] ボタンを使用する。このプロセスでは、アセットのみがインポートされます。

  • コンテンツ ブラウザ にファイルをドロップ アンド ドロップする。このプロセスでは、アセットのみがインポートされます。

  • USD Stage Editor のウィンドウで [Action (アクション)] > [Import (インポート)] オプションを使用する。このプロセスでは USD Stage Actor に含まれるすべてのものがインポートされ、アセットとアクタの両方で機能します。インポート プロセスが完了すると、USD Stage のアセットは コンテンツ ブラウザ からの新しいアクタに置き換えられます。

Kitchen Set を Unreal Engine にインポートする

  1. [USD Stage] ウィンドウで Kitchen Set を開いた状態で、[Actions] メニューを開いて [Import] を選択します。

  2. インポートしたアセットを格納する場所を選択します。この例では、Kitchen Set をインポートした際に、選択した場所に「Kitchen_set」という名前のフォルダが作成されます。マテリアルとスタティック メッシュは別のサブフォルダにそれぞれ保存されます。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
閉じる