![]() |
1
1
你可以试着打电话
或者您可以尝试使用boundingsphere方法,因为我在项目中使用它来将对象调整到视图中:
提示: 确保相机和控制器不在同一位置。否则,计算方向是行不通的。
编辑:
好吧,我从@rabbid76的图表中得到了提示:我的解决方案基本上与第一个一致。在某些情况下,对象或边界框的某些部分将位于视锥之外。所以第二张图所示的方法更好。为此,我们只需要改变
|
![]() |
2
2
新的摄像机目标是球体的中心,新的摄像机位置沿当前视线的相反方向移动计算距离:
视线是
新目标的位置计算如下:
更进一步
如果你使用包围包围盒的球的直径,而不是盒子的最大角度长度,你将获得一个稍微大一些的图像部分:
但请注意,这可能仍然不是你想要的。请参见图片:
或许你想这么做:
所以你必须用正弦代替正切:
|
![]() |
3
0
加载.obj,然后将相机设置为.obj的“中心”,您将告诉相机移动到加载的obj的确切中心,而不是加载到视图中。
你要做的是得到你正在加载的对象的宽度和深度,然后从相机的中心位置减去它。 例如
上面的代码片段(未经测试)会将相机位置移回加载对象的整个大小,从而使其进入视图。您还可以减去另一个“缓冲区”,这将使您能够看到更多,而不是在总边界。 希望这有帮助 |
![]() |
Adam Turaj · 反应三纤维场景背景比原始图像更亮 2 年前 |
![]() |
ajai.s · 根据用户偏好改变网络a帧中的化身 2 年前 |
![]() |
Burak Ertan · 如何使数组中的向量不改变其值? 2 年前 |
![]() |
Jojo · 三js-多元素-webgl 2 年前 |
![]() |
Lucho · 三分钟后。js如何将相机添加到glb骨架中的头骨? 2 年前 |
![]() |
Brian Dolan · 如何影响三维力图中的链接距离? 6 年前 |