Datasmith で Rhino を使用する

Datasmith を使用して McNeel Rhinoceros 3D からシーンをインポートする際に特に考慮する必要のある事項について説明します。

Windows
MacOS
Linux

このページでは、DatasmithMcNeel Rhinoceros (Rhino) から Unreal Engine 4 (UE4) にどのようにシーンがインポートされるかについて説明します。ここでは、「Datasmith の概要」と「Datasmith のインポート プロセスについて」で説明されている基本的なプロセスに基づいています。ただし、Rhino に固有の特別な変換挙動がいくつか追加されています。本ページでは、Datasmith を使用して Rhino から Unreal Editor にシーンをインポートする場合、シーンがどのように変換されるか、その結果を Unreal Editor でどのように使用できるかを理解できるように説明します。

Rhino のワークフロー

エクスポートのワークフロー

Datasmith は Rhino に対してエクスポート ワークフローを使用します。したがって、Datasmith を使用して Rhino のコンテンツを UE4 に取り込むには以下を実行する必要があります。

  1. Rhino 用の Datasmith Exporter プラグインをインストールします。「Rhino 用の Datasmith Exporter プラグインをインストールする」を参照してください。

  2. [Save As] または [Export] プロセスを使って Rhino のコンテンツをエクスポートします。詳細は「Rhino から Datasmith のコンテンツをエクスポートする」を参照してください。

  3. Unreal Editor のツールバーにある Datasmith インポータを使用して .udatasmith ファイルをインポートします。「Unreal Engine 4 に Datasmith コンテンツをインポートする」を参照してください。

DirectLink のワークフロー

UE4 で Rhino シーンに対する変更をリアルタイムでプレビューするには、2 つの間に Datasmith DirectLink をセットアップする必要があります。このようにすると、変更を加えるたびにシーン全体を UE4 に手動で再インポートしなくてもよくなります。詳細は「Datsmith Runtime」を参照してください。

他のタイプの Datasmith のワークフローについては、「Datasmith でサポートされているソフトウェアとファイルの種類」を参照してください。

Datasmith ツールバーを使用する

Installing the Datasmith プラグインをインストールするとドック可能なツールバーが Rhino に追加されます。

Datasmith toolbar

Rhino の Datasmith ツールバー

Rhino のコマンドラインに関連するコマンドを入力することで同じ操作をトリガーすることができます。

Datasmith のすべてのコマンドを確認するには、Rhino の Plugin Manager ウィンドウを開いて (コマンドラインで PlugInManager を実行) [Datasmith Exporter] プラグインを選択します。

ボタン

説明

コマンドライン

Synchronize (同期)

Direct Link を介して選択したモデルをプッシュします。

シーンのすべてを迅速に選択するには、Ctrl + A (Windows) または Cmd + A (Mac) を押します。

DatasmithDirectLinkSync

Connections (接続)

[Connection Status (接続状態)] ダイアログを起動します。

DatasmithDirectLinkConnections

Export 3D View (3D ビューをエクスポート)

.udatasmith ファイルをディスクに保存するために既存の .udatasmith エクスポータを起動します。

DatasmithExport

Messages (メッセージ)

メッセージおよびログ出力ウィンドウを起動します。これは、エラー、見つからないテクスチャ、その他の情報の報告に役立ちます。

DatasmithMessages

プラグインがインストールされると、Rhino はインターフェースに Datasmith ツールバーを追加します。プラグインをアンインストールすると、このツールバーは自動的に削除されます。[Options (オプション) メニューの [Toolbar] セクションからドラッグしてデフォルトのツールバーに追加された Datasmith ツールバーのコピーは、アンインストールしても削除されないので、手動で削除する必要があります。

ジオメトリをスタティック メッシュに変換する

Datasmith は、Rhino ファイルに含まれる各メッシュ、ソリッド、またはサーフェスに対して、個別の Static Mesh アセットを作成します。Rhino の [Properties (プロパティ)] パネルでオブジェクトに [Name (名前)] プロパティが設定されている場合 (下図の左を参照)、Datasmith は Static Mesh アセットにその名前を使用します (下図の右を参照)。Datasmith によってレベルに作成された、スタティックメッシュ アセットを参照するアクタも同じ名前を使用します。

インスタンス化

Datasmith が Rhino のシーン内に同一ブロックの複数のインスタンスを検出すると、そのブロックのジオメトリの Static Mesh アセットを 1 セットのみ作成して、この Static Mesh アセットの複数のインスタンスを Datasmith シーンに配置します。そうすることで通常は、プロジェクトのランタイム メモリ要件とパフォーマンスにおいて望ましい結果がでます。また、コンテンツ ブラウザ におけるスタティックメッシュ数の管理が容易になります。

シーンで繰り返し使用されるすべての要素 (窓、ドア、椅子など) を Rhino のブロックにすることで、この機能を可能な限り活用することを推奨します。

詳細については、「Rhino のドキュメント」を参照してください。

テッセレーションとレンダー メッシュ

Unreal Engine では、常に三角ポリゴン メッシュを使用してオブジェクトをレンダリングします。パラメトリック サーフェスまたは NURBS として定義されている Rhino ファイルにオブジェクトが含まれている場合、それらのサーフェスを三角ポリゴン メッシュにトランスフォームまたはテッセレーションを行う必要があります。Datasmith は [File] > [Properties] > [Document Properties | Mesh] にある Rhino テッセレーション オプションを使用します。

名前

説明

Jagged and Faster

品質は若干落ちますが、素早くオブジェクトを覆うために低密度のメッシュを作成します。

Smoother and Slower

速度は若干落ちますが、より正確にオブジェクトを覆うために高密度のメッシュを作成します。

Custom

作成されたメッシュに対してさらに制御が可能になります。密度スライダーは NURBS サーフェスから作成されたポリゴンの密度と数をおおまかに制御します。[Detailed controls] をクリックすると、その他の制御を利用できます。

Rhino でカスタム レンダリング オプションを使用する方法については、Rhino に関するドキュメントの「Polygon Mesh Detailed Options」を参照してください。

メッシュ モディファイア

Rhino は、メッシュを直接編集することなく、メッシュの外見を変更するためのさまざまな方法をサポートしています。

Datasmith を使用して Rhino からデータをエクスポートすると、次のメッシュ修飾子が保持されます。

トライアングルの向き

Datasmith にエクスポートする場合、サーフェスでは方向が維持されます。Rhino 内でサーフェスの方向を視覚化するには、バークフェースの色を明るい緑色に設定します。手順は、[Document Properties] を開き、 [View] > [Display Modes (ディスプレイ モード) > [Rendered] の順に選択します。メニューで [Shading Settings (シェーディング設定)][Backface settings (バックフェース設定)] のオプションが表示されます。最後に、 [Single color for all backfaces] カラーを明るい緑に設定します。

これを行うことで、Datasmith へエクスポートする前にサーフェスの方向が正しいかどうかを確認することができます。

前向き

後ろ向き

詳細および推奨される解決方法については、「Datasmith のインポート プロセスについて」を参照してください。

Rhino のマテリアル

Datasmith が Rhino のシーンで検出した異なるサーフェスのマテリアルに対して、Datasmith では UE4 で Material アセット を同じ名前で個別に作成し、Datasmith シーン アセットの横の「Materials」フォルダに配置します。

  • Materials」フォルダの各マテリアルは「Rhino」ファイルで設定されている色の値、テキスト マップなどのプロパティを公開する マテリアル インスタンス です。これらの公開されたプロパティを変更すると、サーフェスに適用される時のマテリアルの外観を変更できます。Datasmith は作成するスタティック メッシュ アセットにこれらのマテリアル アセットを割り当て、Rhino レンダリングで表示される方法と同じようにサーフェスをシェーディングします。 Datasmith では、Rhino オブジェクトから Unreal Engine にマテリアルをインポートするだけです。Datasmith では Rhino の表示色は完全に無視されます。これにより、Unreal Engine へのインポートの視覚的な結果が、Rhino でのレンダリングの結果と可能な限り一致するようになります。

  • また、Datasmith では「Materials/Master」フォルダに親マテリアルのセットも作成します。これらはそれぞれ、「Materials」フォルダの 1 つ以上の Material アセットの親です。各サーフェスの表示方法を定義したり、追加パラメータを子インスタンスに公開したり、公開パラメータをレンダリング時に反映する方法を変更したりするマテリアル グラフをより詳細にコントロールする必要がある場合は、これらの親マテリアルを編集することができます。 なお、親マテリアルを変更すると、その親から継承するすべてのマテリアル インスタンスも自動的に変更されるので注意してください。通常、変更する前に親マテリアルを複製して、その複製を変更し、最後に特定のマテリアル インスタンスを更新して、新しい複製を親として使用することを検討してください。詳細は、「Datasmith マスター マテリアルを変更する」を参照してください。

Named Views

Rhinoの Named Views は Unreal Engine のカメラに相当します。Datasmith を介して Unreal Engine にインポートされた各 Named View はシーンで別々の CineCameraActor になります。

Rhino メタデータ

Attribute User Text メニューに入力されたデータは Datasmith Metadata としてエクスポートされます。

データはキー値のペアとして表に入力されます。Attribute User Text の使用方法の詳細については、Rhino に関するドキュメントの「Attribute User Text」を参照してください。

Datasmith のシーン階層を構築する

Datasmith では、シーン階層を次のように Rhino のモデルから構築します。

  • Rhino のシーンに含まれる各レイヤーに対して、Datasmith では該当レイヤーのすべてのオブジェクトに対する親として動作するアクタを UE4 で作成します。ただし、Unreal Editor の Layers パネルで作成されたレイヤーとは異なり、このアクタの階層は平坦化されません。Rhino のシーンのレイヤーと厳密に同じようにネストされています。

  • 各レイヤーを表すアクタの下に、対応するレイヤーにあるインスタンス化されたすべてのブロックが別のアクタで表されています。

  • 最終的に、各レイヤーと各ブロックを表すアクタには、レイヤーまたはブロックを構成する実際のジオメトリ オブジェクトを表す Static Mesh アクタが含まれます。Rhino のポイントは Unreal Engine では空のアクタとして表されます。

  • Rhino のグループは、シーン階層における重要な要素ではなく、選択を補助する要素とみなされるため、UE4 のシーン階層に影響を与えません。

例えば下の画像では、Rhino の階層の各レイヤーに、それぞれに対応する Unreal Editor のアクタがあることを確認できます。Rhino でジオメトリ オブジェクトのみを含む lights > [turn signals] のようなレイヤーは、対応する Unreal Editor の Static Mesh アクタのみを保持しています。Rhino のライト レイヤーも left_headlight と right_headlight という名前の 2 つのブロック インスタンスを保持しています。Unreal Editor では、これらがそれぞれネストされたアクタで表されています。そのため、それらのブロックを構成するジオメトリ オブジェクトを保持しています。

このページで使用されているモデルの提供: Turbosquid ユーザー tomashorin.design

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