透视相机能否显示比较近的物体更大的物体?

时间:2017-09-28 03:36:08

标签: 3d three.js

我在ThreeJS中有一个简单的场景,显示两个大小相等的矩形,尺寸相同但在Z轴上分开。相机直接位于形状上方,并以一定角度俯视它们。

没有任何调整,这看起来像下图。注意“小”'矩形离相机更远,所以看起来更小:

enter image description here

是否可以设置它以使更远的对象出现更大,而不是更近的对象遮挡远处的对象(因为它们的大小完全相同),如下图所示:

enter image description here

在上图中,调整了下方矩形的相对大小,但我更确切地保持模型准确,只更改相机视图,因为操纵对象(并将其他对象放在同一空间中)使用正确的相对尺寸会更容易。

注意:要清楚,这些是与相机成一定角度观看的矩形。这意味着我要在一个方向上寻找逼真的视角,在另一个方向上寻找倒置的视角。

1 个答案:

答案 0 :(得分:-1)

类似于this您正在寻找什么?

第二个立方体(红色)在第一个立方体(绿色)后面20个单位,但它们看起来大小相同(它们 相同的大小,使用相同的几何体)。

使用OrthographicCamera完成,删除了透视图并将所有内容显示为在同一平面上。

您需要设置相机的边界。我是这样做的:

var width = window.innerWidth / 50;
var height = window.innerHeight / 50;

var camera = new THREE.OrthographicCamera(
    width / -2, width / 2, height / 2, height / -2, 1, 100
);