【发布时间】:2019-10-18 22:06:22
【问题描述】:
我正在开发一个 VR 世界。您可以在世界中心转动和倾斜相机,但不能四处移动相机。
在 VR 世界中,您可以将视频附加到背景并通过单击它或将十字准线移动到元素上来播放它。
视频本身处于“正常”状态。像这样: Example normal
还有一个“缩放”状态。像这样: Example zoom
在缩放状态下,视频不应大于当前视口。我确实有视频的宽度和高度。如何计算正确的视频大小(或深度)以适应视口的大小?
我可以在对象的当前位置缩放对象,或者我可以将对象移动到更靠近相机的位置。我对这两种选择都持开放态度。
我已经尝试过这里提到的选项: Link
let vFOV = this._engine.getCurrentCamera().fov * Math.PI / 180;
let ratio = 2 * Math.tan( vFOV / 2 );
let screen = ratio * (window.innerWidth / window.innerHeight);
let size = this._contentMesh.geometry.boundingBox.max.y;
return (size/screen) / 4;
上面示例的结果是靠近相机的方式。我忽略了什么吗?
感谢您的帮助!
【问题讨论】:
标签: javascript three.js