我试图在不使用完整的headtrackr库的情况下获得永久的头部耦合角度。我的头不会动,但不会直接在屏幕前。

我有一点demo,您可以使用python -m SimpleHTTPServer 8000下载并运行

该代码主要根据this headtrackr example和部分the headtrackr source改编而成

我的期望基于以下diagram

在第三张图片中,我想象显示器从上方逆时针方向稍微旋转。这应等效于减少Z并使X小于零。我希望监视器显示中间的图像,但我看到的是这样的:


我认为我正在浏览的“窗口”是XY平面,但是它不应该像第一个图中的中间橙色矩形那样伸展吗?这是另一个固定的窗口:http://kode80.com/2012/04/09/holotoy-perspective-in-webgl/来查看“窗口”的含义。

离轴视角和头部追踪是否无关?我如何在THREE.js中获得令人信服的离轴视角的幻觉?

最佳答案

我认为您可以使用setViewOffset完成您的目标。你的图对我来说有点不对劲。也许是因为离轴投影中没有方形,但我认为要注意的是,平截头体应保持在固定点上,而不必旋转相机,这会导致导引器透视失真。

要使用setViewOffset完成此操作,可以将fullWidthfullHeight设置为一些更大的尺寸。偏移量为的视图将是该超大视图中的一个窗口。当用户移动时,该窗口将在观看者的相反方向上偏移。

http://threejs.org/docs/#Reference/Cameras/PerspectiveCamera

关于javascript - Three.js中的头部耦合/离轴透视,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26070386/

10-09 18:24