如何解决如何使子画面旋转以触摸Cocos2d
|| 我有一个箭头精灵,它是在我的Cocos2d游戏中用于瞄准的目的。因此,我希望它指向用户触摸屏幕的位置。我该如何编程精灵的旋转,使其旋转到用户的触摸位置?谢谢!解决方法
这些教程可能会有所帮助:
http://www.learn-cocos2d.com/knowledge-base/cocos2d-iphone-faq/learn-cocos2d-public-content/manual/cocos2d-general/14826-how-to-rotate-a-sprite-in-圆周运动/
http://www.raywenderlich.com/2343/how-to-drag-and-drop-sprites-with-cocos2d
另外,在这里(使用代码)并在以下问题(使用更多代码)中回答了这个问题:通过触摸旋转Sprite-Cocos2d
, 我以前实际上并没有做过,但是我已经修改了一些代码(使敌舰面对玩家舰)适合您的需要。希望这是正确的。
//rotate to face the touch
CGPoint diff = ccpSub(sprite.position,touch.position);
float angleRadians = atanf((float)diff.y / (float)diff.x);
float angleOffset = CC_DEGREES_TO_RADIANS(90);
if(diff.x < 0)
{
angleRadians += angleOffset;
}
else
{
angleRadians -= angleOffset;
}
但是,PengOne的回答(好称BTW)非常好,我赞成,因为您应该使用它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。