Cocos2d iphone 我如何在Cocos2D、Box2D中移动球,就像用触控弹一个真正的球一样?

Cocos2d iphone 我如何在Cocos2D、Box2D中移动球,就像用触控弹一个真正的球一样?,cocos2d-iphone,physics,box2d-iphone,touch-event,Cocos2d Iphone,Physics,Box2d Iphone,Touch Event,我正在努力学习cocos2d中的box2d。我已经搜索了在线教程,ray Wenderlich的似乎是最好的!我正在以缓慢但稳定的步伐学习!我目前正在开发一个应用程序,其中我将在屏幕上包括一个球,每次我触摸/轻触这个球,它就会像有人在轻弹足球一样移动。我已经为接触/轻敲球时球的向上运动(y轴)编码了零件。我遇到的问题是,我找不到一种方法来为球提供适当的角度,以便在x轴上旋转和移动。让我给你举个例子。想象一下,你正在轻弹一个足球,你向上踢球,但球上还有一个旋转力。我正在尝试开发旋转和移动穿过x轴的

我正在努力学习cocos2d中的box2d。我已经搜索了在线教程,ray Wenderlich的似乎是最好的!我正在以缓慢但稳定的步伐学习!我目前正在开发一个应用程序,其中我将在屏幕上包括一个球,每次我触摸/轻触这个球,它就会像有人在轻弹足球一样移动。我已经为接触/轻敲球时球的向上运动(y轴)编码了零件。我遇到的问题是,我找不到一种方法来为球提供适当的角度,以便在x轴上旋转和移动。让我给你举个例子。想象一下,你正在轻弹一个足球,你向上踢球,但球上还有一个旋转力。我正在尝试开发旋转和移动穿过x轴的部分。我想在球的右下角触碰它,以一种真实的方式旋转和移动。当球在空中时,在右下角触摸它,意味着球将移动并旋转到屏幕左侧。我希望我澄清了情况!如果有人能帮助我理解这种运动,我将不胜感激!如果您还不了解我的游戏概念,请搜索“parksoccer”,您将了解我正在努力开发的内容。

我昨天才做了这件事。在这种情况下,您可以做的是当您触摸或轻触屏幕时,在cctouchesbreated中获取该点,然后通过getposition()方法在body上找到球的位置。然后你必须计算这两点之间的角度,找到球从这两点出发的方向。现在你们有了球运动的角度和方向,所以通过ApplyLinearForce(b2vec2 forceangle,body->GetPosition())对球施加线性力。就这样


享受

如果你在这里没有得到答案,你可以在