three-stdlib
Version:
stand-alone library of threejs examples
37 lines (36 loc) • 1.34 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const THREE = require("three");
class StereoEffect {
constructor(renderer) {
const _stereo = new THREE.StereoCamera();
_stereo.aspect = 0.5;
const size = new THREE.Vector2();
this.setEyeSeparation = function(eyeSep) {
_stereo.eyeSep = eyeSep;
};
this.setSize = function(width, height) {
renderer.setSize(width, height);
};
this.render = function(scene, camera) {
if (scene.matrixWorldAutoUpdate === true)
scene.updateMatrixWorld();
if (camera.parent === null && camera.matrixWorldAutoUpdate === true)
camera.updateMatrixWorld();
_stereo.update(camera);
renderer.getSize(size);
if (renderer.autoClear)
renderer.clear();
renderer.setScissorTest(true);
renderer.setScissor(0, 0, size.width / 2, size.height);
renderer.setViewport(0, 0, size.width / 2, size.height);
renderer.render(scene, _stereo.cameraL);
renderer.setScissor(size.width / 2, 0, size.width / 2, size.height);
renderer.setViewport(size.width / 2, 0, size.width / 2, size.height);
renderer.render(scene, _stereo.cameraR);
renderer.setScissorTest(false);
};
}
}
exports.StereoEffect = StereoEffect;
//# sourceMappingURL=StereoEffect.cjs.map
;