MRが楽しい

MRやVRについて学習したことを書き残す

HoloLens RS5(Build 17720) の MixedRealityViewer を試す

本日は HoloLens の調査枠です。
先日、HoloLens RS5(Build 17720) へのアップデートを行いました。
bluebirdofoz.hatenablog.com

MixedRealityViewer

このアップデートから、HoloLensの基本アプリにも「MixedRealityViewer」が追加されました。
f:id:bluebirdofoz:20180727075739j:plain

今までは HoloLens の Home 画面には「Holograms」アプリに登録された3Dモデルしか配置できませんでした。
しかし、「MixedRealityViewer」を使えば、Remix3D にアップロードされた3Dモデルや HoloLens のローカルフォルダに配置した3Dモデルを Home 画面に開くことができるようになりました。
f:id:bluebirdofoz:20180727075751j:plain

表示可能なデータ形式

今回は HoloLens のローカルフォルダに置いた3Dモデルについて、どのようなデータ形式の3Dデータが MixedRealityViewer から表示可能か確認してみました。
MixedRealityViewer は以下のページによると、FBX、STL、OBJ、GLB、GLTF、PLY、3MF の3Dファイルをサポートしています。
www.microsoft.com

早速、BlenderSphere オブジェクトを作成し、各ファイル形式で3Dデータを出力してみました。
データを取り違えないよう、各データには異なる色を着色していきます。
f:id:bluebirdofoz:20180727075856j:plain

出力したファイルを DevicePortal で User Folders/3D Objects 配下に配置しました。
3MF のみ、対応のアドオンを Blender にインストールしていなかったので除外しています。
f:id:bluebirdofoz:20180727075921j:plain

MixedRealityViewer の「FromFile」タグにある「Open」ボタンをタップすると、ローカルフォルダを開けます。
ここでファイルを配置したディレクトリを開けば、読み込み可能なファイルが一覧に表示されます。
f:id:bluebirdofoz:20180727075944j:plain

フォルダを開いた結果が以下になります。
FBX ファイルは一覧に表示されませんでした。PC 上の MixedRealityViewer では FBX ファイルは開けるのですが……。
HoloLens の MixedRealityViewer では FBX ファイルはサポートされていないのかもしれません。
f:id:bluebirdofoz:20180727080038j:plain

各データの表示結果

選択可能なファイルを片っ端から選択して確認しました。
・GLB形式
f:id:bluebirdofoz:20180727080103j:plain
・GLTF形式
f:id:bluebirdofoz:20180727080112j:plain
・OBJ形式
f:id:bluebirdofoz:20180727080121j:plain
・PLY形式
f:id:bluebirdofoz:20180727080133j:plain
STL形式
f:id:bluebirdofoz:20180727080145j:plain

結果、GLB、OBJ については色を含めて表示に問題なし。
GLTF 形式は読み込みが失敗、原因は不明。
PLY、STL はメッシュは読み込めるが色は表示されず。

PLY、STL は頂点カラーで着色済みです。
PC 上の MixedRealityViewer でも灰色で表示されるので、そもそも MixedRealityViewer は頂点カラーでのレンダリングを行わないのかもしれません。

アニメーション設定モデルの表示

少し気になったので、3Dランチャ作成方法の調査で作成した「注視時のモーフアニメーションを設定した GLB ファイル」も投入してみました。
f:id:bluebirdofoz:20180727080222j:plain

開いてみると……。
f:id:bluebirdofoz:20180727080236g:plain
注視時のみ、アニメーションしました。

表示モデルのポリゴン上限

※ 2018/7/27 10:00修正
すいません。単位一桁間違えてました。1万が区切りです。3Dランチャと同じです(汗

更に気になったので約9千三角ポリゴンのデータと、1万1千三角ポリゴンのデータを投入しました。
f:id:bluebirdofoz:20180727080305j:plain

・9千三角ポリゴンの GLB ファイル
f:id:bluebirdofoz:20180727080355j:plain
・1万1千三角ポリゴンの GLB ファイル
f:id:bluebirdofoz:20180727080407j:plain

やはりというか、1万超えのデータは表示できませんでした。これは3Dランチャを作成していた際の制限事項と全く同じです。
読み込み可能なデータ形式が増えているものの、恐らく表示には、3DSecondaryTile の機能をそのまま利用しているものと思われます。