BabylonJS 6.0文档 Deep Dive 摄像机(四):多视角(一)

1. 介绍

BabylonJS的 多视角(Multiview)扩展允许同时渲染多个视图(例如,VR场景中的每只眼睛)。这可以使渲染速度提高1.5到2.0倍左右。

当前并非所有浏览器都支持Multiview。如果需要使用,则需要注意多视角兼容性问题。

以下代码为检验是否兼容Multiview

scene.getEngine().getCaps().multiview;

注意:多视图渲染时是渲染纹理数组,而不是标准纹理。当你使用自定义着色器、特效或后处理时,这可能会导致意外问题(例如,高亮层HighlightLayer将没有效果)。

2. 使用VRExperienceHelper

要启用Multiview,需要将useMultiview选项设置为true。(将要过时的写法

scene.createDefaultVRExperience({ useMultiview: true });

3. 使用VRDeviceOrientationFreeCamera

通过VRCameraMetrics启用:

// Enable multiview
const multiviewMetrics = BABYLON.VRCameraMetrics.GetDefault();
multiviewMetrics.multiviewEnabled = true;
// Create camera
const multiviewCamera = new BABYLON.VRDeviceOrientationFreeCamera("", new BABYLON.Vector3(-10, 5, 0), scene, undefined, multiviewMetrics);

案例地址

你可能感兴趣的:(3D开发,BabylonJS,javascript,前端,BabylonJS,babylon.js,webgl,webgpu,3d)