Buckets:
| import { StereoCamera, Vector2 } from "three"; | |
| class StereoEffect { | |
| constructor(renderer) { | |
| const _stereo = new StereoCamera(); | |
| _stereo.aspect = 0.5; | |
| const size = new 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); | |
| }; | |
| } | |
| } | |
| export { | |
| StereoEffect | |
| }; | |
| //# sourceMappingURL=StereoEffect.js.map | |
Xet Storage Details
- Size:
- 1.25 kB
- Xet hash:
- 101e661c3548142c674cd73b8baba635d633cab568d7e488c35a70a982e42d4c
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.