使用 A-Frame 访问 Oculus Go 触控板轴数据
Accessing Oculus Go trackpad axis data with A-Frame
我正在使用 A-Frame(当前主版本),我的目标是确定 Oculus Go 控制器上被触摸的位置。 (这不是为了移动相机,所以移动控制组件在这种情况下没有帮助。)我设置了一个包含文本对象的场景,以便我可以在 Oculus Go 上测试时查看数据。
场景的相关部分是:
<a-scene>
<a-entity id="textArea" text="data will be displayed here"> </a-entity>
<a-entity oculus-go-controls updater> </a-entity>
</a-scene>
我也在使用以下组件,设置为显示发送到事件处理程序的数据:
AFRAME.registerComponent('updater', {
init: function()
{
let textArea = document.querySelector('#textArea');
this.el.addEventListener("axismove", function(event)
{
textArea.setAttribute("text", "value", "axismove: " + JSON.stringify(event) );
});
}
});
但是,在触控板上移动拇指后,文本对象显示为:
axismove: {'isTrusted': false}
我根据https://aframe.io/docs/0.8.0/components/tracked-controls.html的理解是事件中应该有轴数据传递。如何访问轴信息?
Oculus Go 在 0.9.0 发布之前仅在 master 分支中受支持,但您现在可以通过将脚本标签指向 https://rawgit.com/aframevr/aframe/6888165/dist/aframe-master.min.js
来使用它
使用 oculus-go-controls component 并监听 trackpadchanged
事件。轴值在事件详细信息中:
controllerEl.addEventListener(‘trackpadchanged’, function (evt) {
...evt.detail...
});
我正在使用 A-Frame(当前主版本),我的目标是确定 Oculus Go 控制器上被触摸的位置。 (这不是为了移动相机,所以移动控制组件在这种情况下没有帮助。)我设置了一个包含文本对象的场景,以便我可以在 Oculus Go 上测试时查看数据。
场景的相关部分是:
<a-scene>
<a-entity id="textArea" text="data will be displayed here"> </a-entity>
<a-entity oculus-go-controls updater> </a-entity>
</a-scene>
我也在使用以下组件,设置为显示发送到事件处理程序的数据:
AFRAME.registerComponent('updater', {
init: function()
{
let textArea = document.querySelector('#textArea');
this.el.addEventListener("axismove", function(event)
{
textArea.setAttribute("text", "value", "axismove: " + JSON.stringify(event) );
});
}
});
但是,在触控板上移动拇指后,文本对象显示为:
axismove: {'isTrusted': false}
我根据https://aframe.io/docs/0.8.0/components/tracked-controls.html的理解是事件中应该有轴数据传递。如何访问轴信息?
Oculus Go 在 0.9.0 发布之前仅在 master 分支中受支持,但您现在可以通过将脚本标签指向 https://rawgit.com/aframevr/aframe/6888165/dist/aframe-master.min.js
来使用它使用 oculus-go-controls component 并监听 trackpadchanged
事件。轴值在事件详细信息中:
controllerEl.addEventListener(‘trackpadchanged’, function (evt) {
...evt.detail...
});