如何控制 THREE.PerspectiveCamera 的透视变形

How to controll perspective distortion of THREE.PerspectiveCamera

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

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

.focus

Object distance used for stereoscopy and depth-of-field effects. This parameter does not influence the projection matrix unless a StereoCamera is being used.

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

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

最好更改 PerspectiveCamera 的 FOV。

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

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