首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将图像定位到用户方向360°

将图像定位到用户方向360°
EN

Stack Overflow用户
提问于 2018-01-19 02:24:19
回答 1查看 249关注 0票数 0

我想建立一个VR应用程序,它取决于用户正在看的方向。

我的VR内容是基于基点的,所以如果用户向北看,也应该显示" north - content“。

我用来显示360°的图像,它应该定位在用户看起来的位置。

我的代码如下所示

代码语言:javascript
复制
<a-scene>
      <a-sky src="../../assets/img/puydesancy.jpg" rotation="0 -130 0"></a-sky>
      <a-text font="kelsonsans" value="Sightseeing" width="5" position="-0.75 1.0 -1.5" rotation="0 0 0"></a-text>
</a-scene>

图像是一个360°的球面全景图。

EN

回答 1

Stack Overflow用户

发布于 2018-01-19 04:14:09

你需要制作一个组件,它将根据相机的旋转来处理环境:

代码语言:javascript
复制
AFRAME.registerComponent("rotationhandler", {
    tick: function() {
      var rotation = this.el.getAttribute("rotation");
      if (rotation.y > 0 && rotation.y < 90) {
        document.querySelector("a-sky").setAttribute("color", "red")
      } else {
        document.querySelector("a-sky").setAttribute("color", "blue")
      }
    }
})

因此,在tick上,我检查旋转,当角度正确时,我进行一些更改。只需在旋转上抛出一个模数,这样当有人超过0或旋转超过360时,它就不会变得愚蠢。

this fiddle上查看它。

还有另一种方法,在相机上监听componentchanged,但在我看来这是一种滞后的方法。

现在,当进入VR模式时,旋转取决于陀螺仪的输出值。所以它会像你想要的那样对应于东北方向等。

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

https://stackoverflow.com/questions/48327945

复制
相关文章

相似问题

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