Three.js - 更高的帧率

时间:2017-09-13 06:59:18

标签: javascript three.js framebuffer stereoscopy

我将Three.js与Nvidia的3D Vision快门技术结合使用。我进行渲染的方式如下:

// Init 3D Vision Camera (Shutter Glasses)
var eye_separation = 0.03; // adjust to the distance of your eyes
var cam_toggle = true;

function animate() {

    // Enable 3D Vision
    if (cam_toggle) {
        camera.position.x += eye_separation;
        cam_toggle ^= 1;
    } else {
        camera.position.x -= eye_separation;
        cam_toggle ^= 1;
    }

    renderer.render(scene, camera);
    requestAnimationFrame(animate);
}

基本上我发现的是GPU的帧刷新率是相同的,并且像快门眼镜一样同步。为了产生立体效果,我只是在这个例子中在x轴上改变的某个视图之间切换相机。这非常有效! Nvidia在其文档中描述了使用帧缓冲区切换两个不同的视图我不做的事情。问题是,我最多只能获得60 fps。但我正在使用120赫兹投影机。那么如何加速每个视图的渲染速度高达60 fps,这样我就能得到120个组合?

1 个答案:

答案 0 :(得分:0)

根据此answer hereits source here,如果显示器以120Hz运行,则运行120Hz的动画循环应该有效。