【问题标题】:How to controll perspective distortion of THREE.PerspectiveCamera如何控制THREE.PerspectiveCamera的透视失真
【发布时间】:2016-11-30 12:27:33
【问题描述】:

我的目标是渲染 collada 对象并将其完美地放置在该对象的图像上。

假设我有由 v-ray 渲染器在 3ds max 中渲染的图像(绿色) 和我使用透视相机(红色一个)由三个 js 渲染的 collada 对象。
问题是我在渲染对象上的透视失真比在图像上更大。
我看到THREE.PerspectiveCamerafocus 属性,这似乎是我正在寻找的。但是当我改变它时,什么也没有发生。
THREEJS 文档说:

.焦点

用于立体视觉和景深效果的对象距离。这 参数不影响投影矩阵,除非 正在使用 StereoCamera。

但是我在三个 js 文档中没有找到任何关于 StereoCamera 的信息。

有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: javascript three.js perspectivecamera


    【解决方案1】:

    最好改变PerspectiveCamera的FOV。

    camera = new THREE.PerspectiveCamera(60, window.innerWidth / window.innerHeight, 1, 3000);
    

    所以,第一个参数60 是视野(FOV)。此参数的值越小,您获得的失真就越少,但您必须向后移动相机越多以保持场景的适当视图,或者您必须缩小对象越多。取决于你想要得到什么,玩转你的相机的 FOV 和你的对象的缩放。

    【讨论】:

    • 谢谢。我曾经认为 fov 参数就像整个场景的比例一样,但我错了。
    猜你喜欢
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-23
    • 1970-01-01
    • 2016-08-10
    • 1970-01-01
    • 2023-03-14
    相关资源
    最近更新 更多