Bagaimana untuk menyokong fungsi WebVR dalam Forge Viewer
我想大声告诉你2017-05-19 10:29:33
0
1
739
Kami boleh menyemak imbas model 3D dengan menggunakan Forge Viewer Adakah Forge Viewer kini menyokong fungsi VR? Terutamanya WebVR? Bagaimana untuk menyokong?
Bermula dari Forge Viewer versi 2.12, Extension telah ditambahkan untuk menyokong WebVR, jadi pada asasnya anda hanya perlu memanggil viewer.loadExtension("Autodesk.Viewing.webVR"). Walau bagaimanapun, memandangkan WebVR belum lagi menjadi standard W3C dan masih dalam peringkat percubaan, hanya beberapa penyemak imbas boleh menyokongnya untuk butiran, sila rujuk https://webvr.info.
Di sini kita hanya bercakap tentang sokongan WebVR dalam Forge Viewer Memandangkan banyak penyemak imbas pada masa ini tidak menyokong WebVR secara asli, Forge Viewer juga menyediakan WebVR Polyfill untuk menyokongnya, ia boleh didapati dalam kod sumber Lihat kod berikut:
.
Autodesk.Viewing.Extensions.WebVR.VRExtension.prototype.load = function() {
var self = this;
var _vrDisplay = null;
// check if browser supports webVR1.1 natively, if not, load polyfill
avp.loadDependency('VRFrameData', 'webvr-polyfill.min.js', function() {
navigator.getVRDisplays().then(function(displays) {
if (displays.length > 0) {
_vrDisplay = displays[0];
if (_vrDisplay.capabilities.canPresent) {
// VR detected, add the 'VR button'
var viewer = self.viewer;
var toolbar = viewer.getToolbar(true);
var avu = Autodesk.Viewing.UI;
// Register tool
self.tool = new Autodesk.Viewing.Extensions.WebVR.VRTool(viewer, self, _vrDisplay);
viewer.toolController.registerTool(self.tool);
self.createUI(toolbar);
// Register listeners
self.onToolChanged = function(e) {
var vrToolActive = (e.toolName === 'vr') && e.active;
var state = vrToolActive ? avu.Button.State.ACTIVE : avu.Button.State.INACTIVE;
self.vrToolButton && self.vrToolButton.setState(state);
};
viewer.addEventListener(Autodesk.Viewing.TOOL_CHANGE_EVENT, self.onToolChanged);
return;
}
}
avp.logger.warn('Attempted to load WebVR extension, but WebVR is not supported.');
});
});
return true;
};
Bermula dari Forge Viewer versi 2.12, Extension telah ditambahkan untuk menyokong WebVR, jadi pada asasnya anda hanya perlu memanggil viewer.loadExtension("Autodesk.Viewing.webVR"). Walau bagaimanapun, memandangkan WebVR belum lagi menjadi standard W3C dan masih dalam peringkat percubaan, hanya beberapa penyemak imbas boleh menyokongnya untuk butiran, sila rujuk https://webvr.info.
Di sini kita hanya bercakap tentang sokongan WebVR dalam Forge Viewer Memandangkan banyak penyemak imbas pada masa ini tidak menyokong WebVR secara asli, Forge Viewer juga menyediakan WebVR Polyfill untuk menyokongnya, ia boleh didapati dalam kod sumber Lihat kod berikut:
.