[英]How to get angles value of perspective camera in Three.js?
如何从三维场景中的透视相机的每个角度获取值。 我正在使用Three.js
库。
为了更准确,我将用下一个标志标记我想知道的内容:
我需要知道什么坐标:
这对我来说是必要的,因为我正在创建一个真实的模式地图引擎,通过鼠标光标移动3D场景。
我想要实现的目标可以在这里找到: http : //www.zephyrosanemos.com/windstorm/current/live-demo.html
正如您所看到的,在此示例中,新地形正在加载,与新位置相交(当摄像机离开旧视口时,以前无法使用垃圾收集):
现在,我想从我的three.js应用程序中显示一块屏幕:
正如你所看到的,我正在静态加载我的场景,只有一架飞机可以在建筑物中使用(建筑物数据从我的服务器加载,而数据我从某些osm服务获得令牌)。
并且它可以仅通过按下键盘按钮来控制(例如,通过按下键盘箭头,3D场景定位到新位置,因为您可以看到地图中的空白区域:)这只是因为准备切割数据数据库用于测试目的,当应用程序准备就绪时 - 它不会为空,在数据库中轻松计算记录数就可以轻松实现。 正在删除所有网格,并且每次新移动都会加载新数据并呈现新建筑。
但是我希望通过相机移动动态加载它们。 所以我想让它能够动态加载,如动态地形生成的例子。 我建议,我将准备一个大的平面矩阵,它只为8个平面加载数据(如在地形生成样本中),并且使用相机进行交互/对于这样的动态工作进行旧视图。
所以......我希望你帮我完成这项艰巨的任务:)
要获得视角,只需获取此字段的值:
Three.PerspectiveCamera.fov
使用该角度,你应该有一个假想的立方锥体并测试它是否有碰撞。 对于碰撞部分,请参考以下问题:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.