本日は WindowsMR の技術調査枠です。
WindowsMR のアプリは通常、以下のような平面のランチャ画面が表示されます。
今回試すのは、これを3Dモデルに差し替えるというものです。
アプリのランチャが特徴的なものになるほか、WindowsMRのホームに好みの3Dモデルを置くこともできます。
以下の記事を参考にしました。
dhero.hatenablog.com
公式マニュアルは以下となります。
Creating 3D models for use in the Windows Mixed Reality home
前提条件として、3Dモデルの作成ツールとglTFのエクスポータが必要です。
今回は Blender とそのアドオンである gltf-Blender-Exporter を用いて実施します。
環境構築手順は以下を参照してください。
bluebirdofoz.hatenablog.com
bluebirdofoz.hatenablog.com
早速、3Dランチャ用のモデルを作成します。Blender を起動し、サンプルのCubeを削除します。
今回は 追加 -> メッシュ -> UV球 を選択し、球体の3Dモデルを作成します。
3Dランチャとして表示できる3Dモデルには様々な制限事項があります。
これらを解消するため、トランスフォームとマテリアルの設定を行う必要があります。
まずはトランスフォーム情報を設定します。
Sphere を選択した状態でオブジェクトタブを選択し、トランスフォームを以下の通り編集します。
位置 X:0.0 Y:1.01 Z:0.0
回転 X:-90 Y:0 Z:0
次にマテリアルを設定します。
Sphere を選択した状態でマテリアルタブを選択し、「新規」ボタンをクリックします。
マテリアルが生成されたらディフューズの色項目を選択し、色を設定します。
以上の設定を行ったら ファイル -> エクスポート -> glTF 2.0(.glb) でファイル出力します。
今回は Test.glb というファイル名で出力しました。ファイル名は任意です。
このとき、(.gltf) ではなく (.glb) ファイルで出力する必要があるので注意です。
次に3Dランチャを設定するアプリが必要です。
サンプルとして MixedRealityToolKit の基本設定を行っただけのアプリを作成します。
ビルドを行い、生成された VisualStudio プロジェクトを開きます。
プロジェクトの Assets ディレクトリに作成したモデルをコピーします。
コピーした Test.glb を選択してプロパティ画面を開きます。
ビルドアクションを「コンテンツ」に変更します。
追加した3Dモデルをランチャとして利用するため、マニュフェストファイルを編集します。
Package.appxmainfest を右クリックで コードの表示 を選択し、テキスト表示します。
以下の2箇所について編集します。
まず、2行目の Package の設定項目に以下の設定を追加します。
xmlns:uap5="http://schemas.microsoft.com/appx/manifest/uap/windows10/5"
・変更前
<Package xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2" IgnorableNamespaces="uap uap2 mp" xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10">
・変更後
<Package xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2" xmlns:uap5="http://schemas.microsoft.com/appx/manifest/uap/windows10/5" IgnorableNamespaces="uap uap2 uap5 mp" xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
次の19行目の uap:DefaultTile 設定のタグに以下の設定項目を差し込みます。
uap5:MixedRealityModel Path="Assets\Test.glb"
(ファイル名とファイルパスは自身が設定したものを記述します)
・変更前
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"/>
・変更後
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"> <uap5:MixedRealityModel Path="Assets\Test.glb" /> </uap:DefaultTile>
以上で設定は完了です。後はアプリをWindowsMRを起動するPCにインストールします。
WindowsMR を起動してメニューからインストールしたアプリを選択します。
アプリのランチャとして、設定した3Dモデルが表示されていれば成功です。
Home で利用できる3Dランチャのモデルには幾つかの制限事項があります。別途、調査を行いました。
bluebirdofoz.hatenablog.com