Javascript A帧超级手移动抓取的对象
我正在用Javascript A帧超级手移动抓取的对象,javascript,aframe,oculus,aframe-super-hands,Javascript,Aframe,Oculus,Aframe Super Hands,我正在用aframe-super-hands组件制作一个A-Frame项目。为了添加一个控制层,我尝试使用它,以便用户可以使用控制器的操纵杆使实体离控制器更近/更远,类似于Oculus Dash控件() 但是,当我尝试更新模型的位置时,正如我在抓取模型时所做的那样,它尝试移动,但在发出grab start时被设置的物理约束停止。是否有方法可以移动超级手抓取模型或重置应用于模型的约束 下面是我尝试更新抓取的盒子位置时的情况: 在代码方面,我所要做的就是用model.object3D.positio
aframe-super-hands组件制作一个A-Frame项目。为了添加一个控制层,我尝试使用它,以便用户可以使用控制器的操纵杆使实体离控制器更近/更远,类似于Oculus Dash控件()
但是,当我尝试更新模型的位置时,正如我在抓取模型时所做的那样,它尝试移动,但在发出grab start
时被设置的物理约束停止。是否有方法可以移动超级手抓取模型或重置应用于模型的约束
下面是我尝试更新抓取的盒子位置时的情况:
在代码方面,我所要做的就是用model.object3D.position.sub()
更新位置,同时将抓取开始
事件绑定到控制器。如果我正确理解了你的问题,如果你在这里查看super hands页面中的物理示例代码,就可以解决这个问题
您将看到有一个组件连接到控制器,如下所示
AFRAME.registerComponent('phase-shift', {
init: function () {
var el = this.el
el.addEventListener('gripdown', function () {
el.setAttribute('collision-filter', {collisionForces: true})
})
el.addEventListener('gripup', function () {
el.setAttribute('collision-filter', {collisionForces: false})
})
}
})
这“切换”物理约束,同时抓取我认为是你所追求的
很难知道你还做了什么,但是如果你还没有,你需要包括这个组件,以及超级手和物理。使该组件工作
我希望这会有所帮助。碰撞力
只会使连接到控制器的静态主体
穿过或碰撞对象。虽然我认为碰撞力
和框架物理附加部分
与我的问题无关,但我将去调查框架物理系统
的约束
组件: