模拟真实钓鱼的操作,拿手机当做鱼竿,把手机往前一甩就执行抛竿动作,往回一收就执行收杆动作,这样的动作怎么用重力感应来实现呢?想了好久也不知道怎么搞,急求大神给点思路!!谢谢!!!
挺有意思的创意啊,我暂且讨论一个思路(不知道可行不)。用box2d创建鱼竿和线还有钩子,在鱼竿把手处创建revolute joint,当甩出去的时候用重力传感来获取水平改变的角度。然后对鱼竿施加一个到达这个角度的冲量,冲量大小就用计时器和水平仪角度改变大小来判定
谢谢, 我用的是cocoscreator做的,查看api对重力感应这块描述的不是很详细,只告诉怎么注册事件,和回调
cc.systemEvent.on(cc.SystemEvent.EventType.DEVICEMOTION, this.onDeviceMotionEvent, this);
onDeviceMotionEvent (event) {
//回调函数
cc.log(event.acc.x + " " + event.acc.y);
},
不知道水平改变的角度怎么获取,这个event.acc我也不太明白是什么,测试过只要手机跟着晃这个x和y就会变化,但是具体什么规则搞不懂,所以实在不知道该怎么处理 0 0
我是刚接触cocos就开始用creator来做开发,边学边做,也是刚用到重力感应,对你说的冲量什么的不是太理解
我也没用过,
case master里有实例好像,你可以去翻翻
这个x和y是加速度,我去看看case sample,应该可以通过x和y来得到你现在所处的角度。通过计算x和y的变化你可以得到鱼竿加速度。你就直接将鱼竿的加速度每帧修改。因为你手机对应的应该就是鱼竿。
还有就是现阶段你可以等等,因为box2dweb效率实在太低,绳子估计够呛。马上要出1.5了,耐心等等
创意是好创意,就是有点费手机