Blender を使用して Dynamics 365 Guides および Power Apps で作成したアプリに含まれる Mixed Reality コンポーネントで使用する 3D オブジェクトを準備する
このチュートリアルでは、次の手順をステップごとに説明します。
3D オブジェクトのポリゴン数を減らして、Microsoft Dynamics 365 Guides および Microsoft Power Apps で作成されたアプリに含まれる Mixed Reality コンポーネントの特定のパフォーマンス ターゲットのためのパフォーマンス ニーズに合うようにします。
3D オブジェクトの複数のマテリアル (カラー) を、モデルに適用できる単一のテクスチャに結合します。
最適化された 3D オブジェクトを、Dynamics 365 Guides および Power Apps で使用できる GLB ファイルとしてエクスポートします。
ポリゴンを減らし、さらに複数のマテリアルを 1 つのテクスチャに変換することにより、複雑でリソース消費の大きな 3D オブジェクトを、Dynamics 365 Guides と Power Apps で十分に機能する 3D オブジェクトに変換できます。
重要
このドキュメントは、Blender と Dynamics 365 Guides および Power Apps の動作についての情報提供のみを目的として作成されています。 お客様によるサード パーティ アプリケーションの使用には、お客様とサード パーティ間の条件が適用されます。 Microsoft Corporation は、Blender との提携やパートナーシップの関係にあるわけではなく、Blender または Blender の製品の推奨や資金援助は一切行っていません。 3D オブジェクトを準備するにあたって他のコンテンツ作成アプリを使用することもできます。
Blender とは
Blender は無料でオープン ソースの 3D 作成スイートです。 Blender は 3D パイプライン全体をサポートし、モデリング、リギング、アニメーション、シミュレーション、レンダリング、合成とモーション トラッキング、ビデオ編集、ゲーム作成をサポートします。
3D オブジェクトの準備に Blender ソフトウェアを使用する場合には、Blender の Web サイトを確認し、Windows 用の最新の安定バージョンをダウンロードしてください。
Blender を使って 3D オブジェクトを準備するための全体の手順
Blender を使って Mixed Reality のための 3D オブジェクトを準備するには、次の手順を行います。
モデルを Blender にインポートします。
モデルをデシメートします。
モデルをアンラップ (UV アンラップ) します。
マテリアルを割り当てます。
テクスチャをベイク処理します。
モデルを GLB ファイルとしてエクスポートします。
モデルを Blender にインポート
Blender を開きます。 アプリを開くと、新しいシーンが自動的に作成されます。
キューブを右クリックし、Delete を選択して削除します。
File>Import>Wavefront (.obj) を選択して、OBJ ファイルをインポートします。
Import OBJ で、以下を行います。
a. Object および Group のチェック ボックスをオフにし、Image Search のチェック ボックスをオンにします。
b. 画面の右側で Import OBJ を選択します。 これにより、3D オブジェクトが 1 つのアイテムとしてインポートされ、サブフォルダーでマテリアルが検索されます。
Import OBJ を選択すると、インポートされたマテリアルを含む 3D オブジェクトが表示されます。
ヒント
次の図に示すように、3D オブジェクトが非常に大きいか、または小さいか、見えにくい場合、または画面外にある場合は、マウスホイールを使用して、モデルが表示されるまで、カメラをズームインまたはズームアウトします。
3D オブジェクトがグレーで表示される場合は、Look Dev シェーディング オプションを選択して、カラーを表示します。
c. 画面の右下にある Tris カウント (ポリゴンの数) を確認します。
この数値がパフォーマンス ターゲットの解像度に合う場合には、デシメートの手順をスキップして、このチュートリアルの後半のモデルのアンラップに直接進みます。 ターゲットの解像度を満たしていない場合は、次のセクションに進んで、モデルのデシメートを行います。
モデルのデシメート
アプリケーション固有のパフォーマンス目標を達成するには、モデルのデシメートを行う必要があることがあります。 デシメートとは、モデルのサーフェス ポリゴンを再計算して、より少ないポリゴンで、同様の形状を作成するプロセスです。 これにより、視覚的な忠実性は低下しますが、パフォーマンスは向上します。 以下の画像の例では、Microsoft HoloLens で同時に 1 ~ 2 個の 3D オブジェクトを表示するときに使用できる忠実性の高いモデルと、HoloLens で同時に 10 個以上のオブジェクトを表示するときに使用される低品質の 3D オブジェクトを示しています。
モデルを選択して、右側のツール列にある Modifiers メニューに移動します。
Modifiers メニューの Add Modifier リストで、Decimate を選択します。
モデルを選択して、Ratio の値を 0.0 〜 1.0 の数値に変更します。 この設定により、削除されるポリゴン (三角形) のパーセンテージを指定します。 たとえば、値が 0.5 の場合、元のポリゴン数を 50% に減少します。 この比率を変更すると、Blender ウィンドウの右下にある Tris 値が減少します。 数値がパフォーマンス目標を満たす適切な値になったら、Apply を選択します。
モデルのアンラップ (UV アンラップ)
モデルのカラーが 1 つのみの場合は、この手順をスキップできます。
UV アンラップの概念を視覚的に説明します。3D オブジェクトのすべてのサーフェスを切り取り、それらのサーフェスを 1 枚の紙の上に平らに置くと考えてください。 U 次元と V 次元は、その紙の垂直軸と水平軸を表します。これは X、Y、Z が 3D オブジェクトの 3 次元軸を表すのと同様です。 UV をアンラップすると、平らにした部分を、モデルのマテリアルのカラーでペイントできます。 このペイントされた紙はテクスチャと呼ばれます。これは後でモデルの上にラップし直すことができます。実際にはカラフルなテクスチャにラップされた 1 つのアイテムが、異なるカラーのピースからできているように見えます。 このプロセスはテクスチャのベイク処理と呼ばれ、このチュートリアルの後半で説明します。
モデルを選択し、メイン メニューをホバーして、Tab キーを押して編集モードに入ります。a を押してすべてを選択し、UV メニューで Smart UV Project を選択します。
ヒント
編集モードに入るには、左上隅の Edit Mode リストを選択するか、または Tab キーを押します。 編集モードになっているときに Tab キーを押すと、オブジェクト モードに戻ります。これを次の図に示します。
プロパティの既定の設定を保持して、OK を選択します。
編集モード (Tab キーを押す) になっていること、およびモデル全体が選択されていること (a を押す) を確認します。 モデル全体を選択すると、オレンジ色で表示されます。
UV Editor メニューを選択します (または Shift+F10 を押します)。
UV メニューで Pack Islands を選択します。
輪郭が描かれた部分は、モデルのサーフェスをできる限り効率的に表すように、再編成されます。 Pack Islands が完了すると、UV は次のように表示されます。
テクスチャのベイク処理先となるメッシュのコピーを作成します。 実行手順:
a. モデルを選択します。
b. モデルを右クリックして、メニューを開きます。
c. Duplicate Objects を選択します。
d. Space キーを押します。
テクスチャをベイク処理するマテリアルの準備
複製されたモデルを選択し、Materials タブを選択して、Materials パネルに移動します。
マテリアルの右にあるマイナス記号を選択して、複製された 3D オブジェクトのすべてのマテリアルを削除します。
元の 3D オブジェクトを非表示にして複製のみを表示するには、元の 3D オブジェクト名の右にある「目」を選択します。 複製された 3D オブジェクトには、マテリアルがないことに注意します。
マテリアル パネルでプラス記号を選択して、複製に新しいマテリアルを追加します。
New を選択して、新しいマテリアルをマテリアル スロットに追加します。
ビューポート (3D オブジェクトが表示されているメイン ウィンドウ) をホバーして、Tab キーを押して編集モードに入ります。a を押してすべてを選択し、Materials タブ から Assign を選択します。
Object Mode の左にあるアイコンを選択し、Image Editor を選択します。
新しい画像を作成します (Add>Image>New を選択します)。
新しい画像を My_Texture などの覚えやすい名前で保存し、幅と高さを 1024 × 1024 ピクセルに設定します。 他のオプションは、既定値のままにします。
ビュー の左にあるアイコンを選択して、シェーダー エディターを選択します。
複製された 3D オブジェクトを選択して、Add>Texture>Image Texture を選択します。 選択またはクリックして、Image Texture ノードをウィンドウに配置します。
Image Texture ウィンドウの Color というラベルの付いた黄色のノード リンク (黄色のドット) を、Principled BSDF ノードの Base Color の黄色のノードにドラッグして、接続します。
Image Texture ノードのドロップダウン メニューで、作成したテクスチャを見つけて、選択します。
左上の 3D Viewport を選択して、3D Viewport メニューに移動します。
テクスチャへのマテリアルのベイク処理
複製された 3D オブジェクトにテクスチャとマテリアルを設定したら、元の 3D オブジェクトのマテリアルをそのテクスチャにベイク処理します。 テクスチャは複製された 3D オブジェクトの周りにラップされます。このため、元のカラーを使用しながら、パフォーマンスが向上します。
レンダー タブを選択します
レンダリング エンジンとして Cycles を選択します。
Bake メニューで、Bake Type を Diffuse に設定します。
Direct および Indirect のチェック ボックスをオフにします。
元の 3D オブジェクトを選択し、Shift キーを押しながら、複製された 3D オブジェクトを選択します。
Selected to Active のチェック ボックスをオンにします。
Ray Distance の値を追加します。 .01 から始めて、結果にカラーのパッチが足りない場合は増やします。
Bake を選択します。
複製された 3D オブジェクトのカラーは元のモデルと同じになりましたが、マテリアルは複数ではなく、1 つだけになりました。 これにより、ドロー コールが大幅に減り、パフォーマンスが向上します。
ベイク処理が正常に完了したことを確認するには、元のモデルの横にある目のアイコンを選択して、非表示にします。 これで、1 つのマテリアルとテクスチャを持つ複製のみが表示されます。
モデルを GLB ファイルにエクスポート
最後のステップでは、モデルを GLB ファイルにエクスポートして、Dynamics 365 Guides や Power Apps で使用できるようにします。
Blender で、File>Export>glTF 2.0 を選択します。
Export メニューで GLB 形式が選択されていること、および Selected Objects チェック ボックスが選択されていることを確認します。 ファイルに名前を付けて、glTF 2.0 (.glb/.gltf) を選択します。
Dynamics 365 Guides または Power Apps での 3D オブジェクトの表示
3D オブジェクトの準備が完了したら、次のリンクを参照して、Dynamics 365 Guides または Power Apps でモデルを使用する方法を確認します。
詳細
このドキュメントに含まれているいくつかのスクリーンショットは Blender ソフトウェア プログラムから取得したもので、Blender のソフトウェアの使用方法を明確に説明することを目的としています。 Blender Foundation の詳細については、こちらをご覧ください。
Microsoft Corporation は、Blender の使用から生じたか、これらの手順に従ったことにより生じたいかなる種類の損害に対しても責任を負わず、このような損害の全責任を明示的に否認します。 このドキュメントは、お客様に一般的な情報を提供するためにのみ作成されており、個別の事業計画や仕様は考慮されていません。 Blender のライセンス条項については、Creative Commons Attribution ShareAlike をご覧ください。
このドキュメント内での商標名および画像の使用は、情報提供または説明のためのみを目的としています。Microsoft Corporation がこれらの使用に関して商業的な主張、スポンサーシップ、推奨を行っていることを示唆するものではありません。