Javascript 一帧中的wasd变化

Javascript 一帧中的wasd变化,javascript,aframe,Javascript,Aframe,嗨,我是一个新手,尝试在屏幕上创建按钮(如全屏幕VR模式)来模拟wasd控件 我尝试了这方面的信息,它给了我一些关于这方面的提示,但没有解决我的问题 如果你们有任何想法,请告诉我 我还试着播放键盘事件,但也没用 这是我尝试过的相机代码,但什么也没发生 -谢谢如果您想在单击按钮时移动相机,只需在组件中创建一个侦听器即可: AFRAME.registerComponent('click-handler',{ init:function(){ let cam = document.query

嗨,我是一个新手,尝试在屏幕上创建按钮(如全屏幕VR模式)来模拟wasd控件

我尝试了这方面的信息,它给了我一些关于这方面的提示,但没有解决我的问题

如果你们有任何想法,请告诉我

我还试着播放键盘事件,但也没用

这是我尝试过的相机代码,但什么也没发生


-谢谢

如果您想在单击按钮时移动相机,只需在组件中创建一个侦听器即可:

AFRAME.registerComponent('click-handler',{
init:function(){
   let cam = document.querySelector('[camera]');
   this.el.addEventListener('click',function(e){
         let pos = cam.getAttribute('position');
         pos.z++;
         cam.setAttribute('position',pos);
   });
 });
这将在单击时向前移动摄影机。 如果你想让它像wasd控件一样平滑,带有“摩擦力”和某种od速度,你需要在
勾选()
,在这里你将速度定义为
如果(速度>0)速度=acc+速度摩擦力
,点击按钮后进行acc窥视。您可以在按住按钮的同时增加acc,这样运动会更加平稳。

我发现通用控件很有用,当你使用vive/其他控制器移动时,而不是通过查看某些实体。

在a中共享一些代码我如何管理摄影机角度的变化我的意思是它可以指向任何地方,假设它指向zx方向,那么我应该如何计算方向。。。一种方法是减去相机和光标向量来获得方向,但是如果我没有使用光标,那么我将如何计算方向向量呢?。。。。谢谢你每次都帮我(亚当)据我所知,管理摄像机是通过设置/获取document.querySelector(“[camera]”)旋转属性。旋转摄影机也会旋转坐标系,因此通过减小其“z”位置来执行“向前”移动摄影机