Aframe A-Frame:如果只有一个控制器打开,是否有一种简单的方法来确定正在使用哪个Vive控制器?

Aframe A-Frame:如果只有一个控制器打开,是否有一种简单的方法来确定正在使用哪个Vive控制器?,aframe,htc-vive,Aframe,Htc Vive,我试图找出,当只有一个控制器时,是否有一种方法可以确定正在使用哪个Vive控制器。在OpenVR中,此信息可用。我想知道A-Frame是否可以做到这一点?当您设置控制器时,您可以设置利手: <a-entity id="leftHand" vive-controls="hand: left"></a-entity> <a-entity id="rightHand" vive-controls="hand: right"></a-entity> 还请

我试图找出,当只有一个控制器时,是否有一种方法可以确定正在使用哪个Vive控制器。在OpenVR中,此信息可用。我想知道A-Frame是否可以做到这一点?

当您设置控制器时,您可以设置利手:

<a-entity id="leftHand" vive-controls="hand: left"></a-entity>
<a-entity id="rightHand" vive-controls="hand: right"></a-entity>

还请注意,在Vive上,可操作性不是预先分配给特定控制器(与Oculus Touch相反),而是在运行时根据控制器与头部的相对位置确定。
AFRAME.registerComponent('controller-connected', {
  init: function () {
    var el = this.el;
    el.addEventListener('controllerconnected', function (evt) {
      console.log(evt.detail.component.data.hand);
      // Or... console.log(el.getAttribute(evt.detail.name).hand)
    });
  } 
});

<a-entity controller-connected id="leftHand" vive-controls="hand: left"></a-entity>
<a-entity controller-connected id="rightHand" vive-controls="hand: right"></a-entity>
navigator.getGamepads();