首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Three.js中获取透视相机的角度值?

如何在Three.js中获取透视相机的角度值?
EN

Stack Overflow用户
提问于 2014-02-03 22:50:09
回答 1查看 2.7K关注 0票数 4

如何在3D场景中从透视相机的每个角度获取值。我使用的是Three.js库。

我需要知道的坐标:

这对我来说是必要的,因为我正在创建一个真实模式的地图引擎,通过鼠标光标在3D场景中移动。

如您所见,在此示例中,新地形正在加载与新位置相交的内容(以前,当摄影机离开旧视口时,垃圾收集不会提供这些位置):

现在,我想显示我的three.js应用程序的一部分屏幕:

正如你所看到的,我正在静态地加载我的场景,其中只有一个带有建筑物的平面可用(建筑物数据是从我的服务器加载的,而我拥有的数据是从一些osm服务加载的)。

它只能通过按下键盘按钮来控制(例如,3D场景通过按键盘箭头定位到新的位置,因为你可以看到map中的空白空间:)这只是因为在数据库中准备剪切数据用于测试目的,当应用程序准备就绪时-它不会为空,这是很容易与数据库中的记录数量较少的工作)。所有网格都将被删除,每次新的移动都会加载新的数据并渲染新的建筑。

我建议,我应该准备一个大的平面矩阵,它只加载8个平面的数据(就像在地形生成样本中一样),并为这样一个动态工作与相机交互/离开旧视图建立一个逻辑。

所以..。

EN

回答 1

Stack Overflow用户

发布于 2014-02-03 23:27:08

要获取视野角度,只需获取该字段的值:

Three.PerspectiveCamera.fov

有了这个角度,你应该可以有一个假想的立方体圆锥体,并测试它的碰撞。有关碰撞部分,请参考以下问题:

How to detect collision in three.js?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21530357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档