框架发生了变化

问题描述 投票:0回答:2

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

我尝试了有关此的信息链接它给了我一些关于此的提示,但没有解决我的查询。

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

我也尝试广播键盘事件,但它们也没有帮助。

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

<a-camera id="myCamera" universal-controls="movementControls: custom, touch;">
    <a-cursor id="myCursor" color="blue"></a-cursor>
</a-camera>

-谢谢

javascript aframe
2个回答
0
投票

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

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 控件中一样平滑,带有“摩擦”和某种速度,你需要在

tick()
中实现它,你将你的速度定义为
if(speed>0)speed=acc+speed-friction
,然后进行 acc 窥视一旦您单击按钮。您可以在按住按钮的同时增加 acc,这样移动会更加顺畅。


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


0
投票

我发现了这个:https://zenn.dev/yumabo/articles/9e7cdfa684a2bf并且它在 Glitch 上运行良好。代码是英文的,日文很容易通过谷歌翻译。

我一直在寻找涉及移动设备和 Chromebook 上的开发的框架运动解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.