Forge Viewer の新しいバージョン 2.13 がリリースされました。開発フェーズでは、バージョン 2.12 も用意されていましたが、 1 つスキップしてのリリースです。バージョン 2.12 の注目すべき機能に、WebVR を利用する新しい ’Autodesk.Viewing.webVR’ Extension のサポートがあります。
’Autodesk.Viewing.webVR’ Extension を Viewer にロードすれば、追加のコーディングを必要せずに 基本的な VR(Virtual Reality、バーチャル リアリティ)の能力をサポートすることが出来ます。従来、この部分を独自に実装したデモがいくつかありましたが、デザイン ファイルを Model Derivative API で変換して Forge Viewer に表示する従来の方法で、左右視差を持つ VR 表示を実現することが出来るようになります。
Forge Viewer でのモデル表示コードの進化 でご紹介した Basic Application 方式で Extension をロードする場合には、次のようなコード抜粋になるはずです。
Autodesk.Viewing.Initializer(options, function onInitialized(){
var avp = Autodesk.Viewing.Private;
avp.logger.setLevel( avp.LogLevels.Debug );
var config3d = {
extensions: ['Autodesk.Viewing.webVR']
};
viewerApp = new Autodesk.Viewing.ViewingApplication('viewerDiv');
viewerApp.registerViewer(viewerApp.k3D, Autodesk.Viewing.Private.GuiViewer3D, config3d);
viewerApp.loadDocument(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);
});
なお、バージョン 2.12 では、Extension 名 Autodesk.Viewing.webVR の webVR の最初の文字が小文字になっている点に注意してください。Extension 名は、この後説明するバージョン 2.13 で変更されていて、Autodesk.Viewing.WebVR になっています。 明示的な理由がない限りバージョン 2.13 を利用すべきですが、Forge Viewer 使用時に バージョン指定 が可能なため、あえてお知らせしておきます。
さて、Extension が正しくロードされると、WebVR をサポートする環境でのみ標準ツールバーに VR ボタンが表示されます。Windows PC や Mac の Web ブラウザでは VR ボタンは表示されません。当初、Oculus Rift や HTC Vive もサポートする予定もあったようですが、現時点では Google Cardboard、つまりスマートフォンでの使用がサポートされています。
バージョン 2.12 でサポートされるのは、表示したモデルに対しての基本的な VR 機能のみです。まだ、ウォークスルーのような機能は搭載されていないので、モデルの外側を表示した場合には、VR ボタンで VR モードに移行してから、タップ操作等で適切な表示状態を手動で作る必要があります。
もし、建物などの屋内の 状態に表示を切り替えることが出来れば、頭部の動き合わせて周囲を見回す VR らしさを体感することも出来ます。
バージョン 2.13 では、前述のとおり、 Extension 名が Autodesk.Viewing.WebVR に変更されています。同時に新しく導入された ’webVR_orbitModel' フラグが用意され、Cardboard を装着した頭部の動きに合わせて、表示中の3D モデル自身を回転させるオービット処理を実現することが出来ます。直感的な VR とはいえませんが、「実験」として実装されています。
Basic Application 方式でバージョン 2.13 の Forge Viewer に Autodesk.Viewing.WebVR Extension ロードと webVR_orbitModel フラグの指定を実装したコード抜粋は次のとおりです。
Autodesk.Viewing.Initializer(options, function onInitialized(){
var avp = Autodesk.Viewing.Private;
avp.logger.setLevel( avp.LogLevels.Debug );
var config3d = {
extensions: ['Autodesk.Viewing.WebVR'],
experimental: ['webVR_orbitModel']
};
viewerApp = new Autodesk.Viewing.ViewingApplication('viewerDiv');
viewerApp.registerViewer(viewerApp.k3D, Autodesk.Viewing.Private.GuiViewer3D, config3d);
viewerApp.loadDocument(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);
});
webVR_orbitModel フラグの指定時の動作は、次のようなものになります。
Autodesk.Viewing.WebVR Extension を利用するには、明示的に Forge Viewer でバージョン 2.13 の参照を指定する必要があります。バージョン指定をせずに使用した場合は、Forge Viewer を利用しているオートデスク製品にあわせて、無条件に バージョン 2.10 が適用されてしまいます。バージョン 2.10 には Autodesk.Viewing.WebVR Extension をロードさせることが出来ませんのでご注意ください。
Forge Viewer での VR サポートでは、experimental フラグの追加も含め、今後の Viewer バージョンで機能が徐々に追加されていく予定です。ご期待ください。
By Toshiaki Isezaki
コメント