我怎样才能在 A-Frame 中自动行走?

How can I auto walk in A-Frame?

对于我的 A-Frame 项目,我希望玩家在不依赖任何控制器或键盘的情况下继续前进。玩家应该始终向前移动,并且应该能够通过环顾四周来决定方向(不改变 z 值)。在相机上使用外观控件和在装备上使用移动控件(来自 aframe-extras)会产生这种行为,除了它仍然依赖于控制器这一事实。如何在 A-Frame 中实现自动行走?

<a-entity id="rig" movement-controls>
    <a-entity id="camera" position="0 1.7 0" camera look-controls>
</a-entity>

如果您使用的是运动控制组件,您可以添加自己的“控件”。正如文档所说,您所要做的就是用“-controls”后缀命名它(参见 https://github.com/n5ro/aframe-extras/tree/master/src/controls#customizing-movement-controls )。这是“运动控制”的简单“自动行走”自定义控件组件的代码:

AFRAME.registerComponent('autowalk-controls', {
  isVelocityActive: function () {
    return true;
  },
  getVelocityDelta: function () {              
    return new THREE.Vector3(0, 0, -1);
  }
}); 

您只需将它添加到“移动控件”的 控件 属性中即可使用它:

movement-controls="controls: autowalk"