我正在尝试为Autodesk Forge Viewer API开发一个扩展,其功能类似于所包含的当前第一人称导航工具。我正在描述的问题也出现在第一人称导航工具中,因此在这里我将用它来说明我的示例。
建筑物的正射影像。 Image of model after load
现在,使用鼠标导航至如下所示的位置。这是通过单击鼠标来旋转模型并单击鼠标滚轮来完成的。 Image of model after navigation
单击第一人称视角按钮将摄像机视图移动到建筑物内的某个距离。 Image of inside building
这似乎不会改变相机的位置或目标值,即使相机被锁定,也会发生。进行此举的实际呼叫似乎是对navigation.toPerspective的呼叫。
我想知道是否有人知道一种解决方法,该解决方法可以让我从照相机所关注的地方使用第一个人。如我之前所说,我正在编写的插件实际上并不是第一人称扩展,因此假设我可以在需要进行的任何必要的地方进行必要的更改。
答案 0 :(得分:0)
如果您深入挖掘内置的第一人称扩展名的源代码(可以通过source map到git merge
进行操作),那么在\extensions\BimWalk\BimWalk.js
期间将发生以下导航(因为以编程方式完成,将不遵守相机锁定):
activation
然后在退出“第一人称”时将其垂直视野重新设置。
viewer.navigation.toPerspective(); //Switch to perspective (view or real world as opposed to orthography) camera
viewer.navigation.setVerticalFov(75, true); //This sets the vertical field of view to 75 degree for a better "walking" experience
//It also records the current vertical fov and sets it back when exiting First Person