未调用 Aframe 回调

Aframe callback not called

我有一个相机运动回调函数,在框架中实现。但是永远不会调用回调。我正在这样注册组件:

window.onload = function () {
  AFRAME.registerComponent('listener', {
    tick: function () {
      console.log("TICK IS CALLED");
    }
  });
  addMaze();
};

场景是这样的:

<body>
  <a-scene physics id="a">
<a-entity position="33 0 -33" rotation="0 180 0" id="camera" camera="userHeight: 1.6" kinematic-body universal-controls listener>
</a-entity>

<!-- walls -->
<a-box color="#abc" static-body position="-35 0 0" width="0.001" height="6" depth="70"></a-box>
<a-box color="#abc" static-body position="35 0 0" width="0.001" height="6" depth="70"></a-box>

<!-- Lighting -->
<a-light type="ambient" color="#bbb"></a-light>
<a-light color="#ccc" position="0 30 0" distance="100" intensity="0.4" type="point"></a-light>
<a-light color="#ccc" position="3 10 -10" distance="50" intensity="0.4" type="point"></a-light>

</a-scene>
</body>

移动鼠标时,永远不会调用回调。如何确保它被正确调用?

组件应该在任何事情发生之前注册。

<head>
  <script>
    AFRAME.registerComponent('listener', {...});
  </script>
</head>
<body>
  <a-scene>
    <!-- ... -->
  </a-scene>
</body>