Datasmith で SketchUp Pro を使用する

Datasmith を使用して Trimble SketchUp Pro から Unreal Editor にシーンを取り込む際に特に考慮する必要のある事項について説明します。

Windows
MacOS
Linux

このページでは、Datasmith で Trimble SketchUp Pro から Unreal Editor にどのようにシーンがインポートされるかについて説明します。ここでは、「Datasmith の概要」「Datasmith のインポート プロセスについて」 で説明されている基本的なプロセスにに沿っています。ただし、SketchUp に固有の特別な変換ビヘイビアがいくつか追加されています。Datasmith を使用して SketchUp から Unreal Editor にシーンをインポートする予定の場合は、このページを読むとシーンがどのように変換されるか、その結果を Unreal Editor でどのように使用できるかを理解するのに役立ちます。

SketchUp

UE4

SketchUp のワークフロー

Datasmith は SketchUp に対して エクスポート プラグイン ワークフローを使用します。つまり、Datasmith を使用して SketchUp のコンテンツを Unreal に取り込むには、次の手順を実行する必要があります。

  1. SketchUp 用プラグインをインストールします。「Sketchup Pro 用 Datasmith エクスポータ プラグインをインストールする」 を参照してください。

    Epic では、Unreal Engine のすべての新リリースに合わせて SketchUp 用 Datasmith エクスポータ プラグインの新バージョンもリリースしています。Unreal Engine を別のバージョンに切り替える場合は、必ず該当するバージョンのプラグインをダウンロードしてインストールしてください。

  2. SketchUp のコンテンツを 「.udatasmith」 ファイルにエクスポートします。「Sketchup Pro から Datasmith コンテンツをエクスポートする」 を参照してください。

  3. まだインストールしていない場合は、[Importers] > [Datasmith Importer] プラグインをプロジェクトで有効にします。

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

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

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

Datasmith は、同一のコンポーネントまたはグループの連結したポリゴン面をすべて単一のスタティック メッシュに結合することで、SketchUp のジオメトリを Static Mesh アセットに分割します。この手法を把握しておくことで、Datasmith が作成するスタティック メッシュをよりうまく制御することができます。

Unreal のスタティック メッシュがきわめて大きい場合、シーンの静的または固定ライトのベイクがうまくいかないことがあります。大きなメッシュには、モデルの各部分にライトとシャドウを記録する十分な量のテクスチャ スペースを確保するため、それに対応する大きなライトマップ テクスチャが必要になります。大きなスタティック メッシュのライトマップの解像度を上げることもできますが、これによりベイク時間とランタイム時のメモリ要求も増大します。ライトマップ UV の配置方法によっては、生成がまったくうまくいかないことがあります。このような場合は、Unreal でのスタティック メッシュの処理を容易にするために、大きなジオメトリを SketchUp で複数のコンポーネントやレイヤーに分割してみてください。

インスタンス化

Datasmith が SketchUp のシーン内に同一コンポーネントの複数のコピーを検出すると、そのコンポーネントの Static Mesh アセットを 1 セットのみ作成して、これらのスタティック メッシュの複数のインスタンスをシーンに配置します。これにより、通常、ランタイム メモリ要件とプロジェクトのパフォーマンスが改善されます。また、コンテンツ ブラウザでの Static Mesh アセット数の管理が容易になります。

シーンで繰り返し使用されるすべての要素 (窓、ドア、椅子など) を SketchUp の再利用可能なコンポーネントにすることで、この機能をできる限り活用することをお勧めします。

ビルボード

Datasmith では SketchUp のシーンから回転するビルボードをエクスポートして、これらの平面のスタティック メッシュの複数のインスタンスをレベルに配置します。

レベルでの各スタティック メッシュの向きは、シーンをエクスポートした時点の SketchUp カメラのビューポイントに基づいています。Unreal Engine のカメラが、レベルで SketchUp の元のカメラと同じ場所にある場合、平面のスタティック メッシュは SketchUp で実行されているビルボードの回転と同じように表示されます。ただし、Unreal Engine でカメラを移動させると、スタティック メッシュの回転状態は、SketchUp で行われるように、カメラの現在のビューポイントに合わせて更新されません。

トライアングルの向き

SketchUp はジオメトリの面の向きに関しては大変柔軟です。「片面のジオメトリ」、つまり厚みのないジオメトリを作成することができます。それを両側から表示することができ、それぞれの面に別のマテリアルを適用することも可能です。

Unreal Engine でのアプローチはこれとは異なり、すべてのジオメトリには厚みがあるということが前提となっています。カメラの方を向いていないトライアングルはサーフェスの背面を意味し、サーフェス前面からの視点では非表示になることが想定されます。ランタイム時のパフォーマンスを最大限に引き出すために、Unreal では後ろ向きのトライアングルは常に カリング されます。これにより、実際には表示されないトライアングルのレンダリングに GPU サイクルが浪費されることが回避されます。

3D オブジェクトが Unreal で想定通りに動作するよう、常に厚みを含めてモデリングすることをお勧めします。ただし、SketchUp で片面のジオメトリを使用している場合、Datasmith では、マテリアルと面方向をスタティック メッシュのトライアングルに割り当てる方法において、片面のジオメトリを使用する意図を最大限反映します。

  • SketchUp でサーフェスの 1 面だけにマテリアルが割り当てられている場合、Unreal ではそのサーフェスがトライアングルの前面として選択されます。

  • それ以外の場合、Datasmith は SketchUp でのサーフェスの正面を Unreal での前面として認識します。

  • 両面 にマテリアルが割り当てられている場合、Datasmith は正面のマテリアルのみをインポートします。

つまり、片面のジオメトリに含まれるトライアングルを裏側から見た場合、デフォルトでは Unreal のシーンではこれらが表示されないことになります。さらに、背面側ではシャドウがキャストされません。

SketchUp

Unreal

上の例では、各ボックスの側面と底面は外側を向いています。左の画像では、それぞれの側面に単一のマテリアルが外側に割り当てられています。中央の画像では、側面に 1 つずつ、合計 2 つのマテリアルが割り当てられています。右の画像では、赤のマテリアルがグループ全体に割り当てられており、ボックスの 1 面だけに異なるマテリアルが割り当てられています。外側に向いている前面の色はすべて Unreal 向けに変換されますが、背面側はボックスをもう一方の側から見た場合にのみ表示されます。

これに対処する最良の方法は、SketchUp でオブジェクトに厚みを加えて修正することです。ただし、Unreal でこの問題を修正する場合は、これ以外のオプションもあります。詳細については、「Datasmith のインポート プロセスについて」 を参照してください。

SketchUp のマテリアル

SketchUp のシーンに含まれる各種サーフェスに対して、Datasmith では新規の Material アセットを Unreal で作成して、Datasmith シーン アセットの横の「Materials」フォルダに配置します。これらのマテリアルの目的は、SketchUp で設定したサーフェスの外観を反映するとともに、Unreal の物理ベースのレンダラを活用するための追加プロパティを提供することにあります。

マテリアルを変更するには、次の手順を実行します。

  1. コンテンツ ブラウザで目的のマテリアルをダブルクリックします。または、変更するマテリアルを使用するレベルのアクタを選択し、[Details (詳細)] パネルでそのマテリアルをダブルクリックします。

  2. 上の図に示すマテリアル エディタが起動します。[Details (詳細)] パネル上部の [Parameter Groups (パラメータ グループ)] セクションでこれらのパラメータを変更できます。また、Unreal レンダラによって公開されるその他のビルドイン パラメータを変更することもできます。

  3. プロパティのデフォルト値をオーバーライドするには、変更するプロパティ名の左にあるチェックボックスをオンにして、マテリアルでそのプロパティをアクティベートします。次に、そのプロパティで使用する値を設定します。

各アセットはマテリアル インスタンスで、その親は Datasmith プラグインにビルトインされている SketchUpMaster マテリアルです。この親マテリアルを開くと、マテリアル インスタンスで公開された各プロパティがマテリアル グラフ内でどのように関連付けられているかを確認することができます。

色とテクスチャの画像

デフォルトでは、インポートしたマテリアルは SketchUp で保持していたテクスチャまたは色を維持します。これをオーバーライドして、マテリアルがソリッド カラーまたはテクスチャのいずれかを使用するように設定することができます。

  • [Color (色)] オプションまたは [Use Texture Image (テクスチャの画像を使用する)] オプションのいずれかをオンにします ([Color (色)] オプションが表示されない場合は、まず [Use Texture Image (テクスチャの画像を使用する)] オプションをオフにしてください)。

  • ソリッド カラーを使用するには、希望の色を出力できるように RGB カラー値を設定します。 
    datasmith-sketchup-material-color.png
    なお、A チャンネルは使用されないことに注意してください。アルファ ブレンディングは別の [Opacity (オパシティ)] オプションでコントロールされます (以下参照)。

  • テクスチャの画像を使用するよう選択すると [Texture (テクスチャ)] プロパティが表示され、使用するTexture アセットを参照するよう設定できます (Unreal プロジェクトにないテクスチャを使用する場合は、コンテンツ ブラウザにそのテクスチャをドラッグ&ドロップして、プロジェクトにインポートします)。
    datasmith-sketchup-material-usetexture.png
    また、テクスチャがサーフェスにタイル化される方法を変更する場合は、[Texture Scale (テクスチャのスケール)] コントロールも使用できます。[R] 値は水平スケーリングを (UV 空間の U 軸)、[G] 値は垂直スケーリングをコントロールします (UV 空間の V 軸)。[B] 値と [A] 値は使用されません。

テクスチャのスケーリング設定の違いによる効果

オパシティおよびブレンド モード

マテリアルのベース カラーにソリッド カラーまたはテクスチャ マップのどちらを使用している場合でも、[Opacity (オパシティ)] コントロールを使用すると、スタティック メッシュを透かして見える背景の量を設定できます。

デフォルトでは、SketchUp マテリアルのオパシティ値が 100% 未満であれば、Unreal ではその値が正しく引き継がれてマテリアルに適用されます。

Unreal でこれまで 不透明 だったマテリアルに [Opacity (オパシティ)] を設定する場合は、マテリアルのブレンド モードを変更する必要があります。[General (一般)] セクションで [Material Property Overrides (マテリアル プロパティの上書き)] グループを展開し、[Blend Mode (ブレンド モード)] オプションをオンにして、その値を [Translucent (半透明)] に設定します。

UE Extended プロパティ

デフォルトでは、インポートされたマテリアルはすべて非メタリックで、バランスの取れたラフネス値「0.5」が設定されています。ただし、異なるマテリアルに対してこれらの値を調整することで、Unreal でのシーンのレンダリングでのリアリズムを容易に高めることができます。これらの値は [UE Extended (UE 拡張機能)] グループのプロパティにあります。

datasmith-sketchup-material-ueextended.png

  • 金属で構成されるオブジェクトで [Metallic (メタリック)] オプションを選択します。これにより、ベース カラーまたはテクスチャがサーフェスに当たる入射光に影響する方法がわずかに変化します。

Default

Metallic On

  • オブジェクトのサーフェスが特に艶なし、または艶光りしている場合は、[Roughness (ラフネス)] チェックボックスをオンにして、その値を調整します。

Default Roughness 0.5

Roughness 0.05

  • オブジェクトの部分ごとに異なる光沢が必要な場合は、代わりにラフネス マップを使用できます。ラフネス マップは、艶消しする部分は白く塗り、艶光りさせる部分は黒く塗った、グレースケールのテクスチャの画像です。

  • どのようにラフネス値とメタリック値が相互作用して、光沢のあるサーフェスが作成されるかについては、「光沢のあるマテリアルの作成方法」 を参照してください。

  • さらに、インポートしたマテリアルに法線マップを設定することもできます。これにより、ジオメトリの小スケール サーフェスの詳細に関するヒントがレンダラに提供されます。

No normal map

With normal map

法線マップおよびラフネス マップは、Adobe Photoshop などの 2D 画像作成ソフトウェアで生成できます。上の画像のテクスチャのように、これらの法線マップおよびラフネス マップをマテリアルのベース カラー テクスチャでベースとして使用できる場合もあります。

SketchUp Pro のみ

現時点では、Datasmith Exporter プラグインは SketchUp Pro でのみ動作します。SketchUp Free または廃止された SketchUp Make はサポートされていません。

Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信