我正在制作一个 2d 游戏,其中我的角色由操纵杆控制,我使用canvas.rotate(angel, x, y)
. 我的角色朝他前进的方向射击,现在我想在他射击时增加他的步枪射出的火力。问题是,我如何围绕我的角色旋转这个火焰图像?
我如何旋转我的角色:
canvas.save();
canvas.rotate((float) controls.getAngle(), controls.charPosition.x + charBitmap.getWidth() / 2, controls.charPosition.y + charBitmap.getHeight() / 2);
character.draw(canvas, controls.charPosition.x,controls.charPosition.y);
canvas.restore();
我如何旋转火:
canvas.save();
canvas.rotate((float) controls.getAngle(), controls.charPosition.x + (fireBitmap.getWidth()) / 2, controls.charPosition.y + (fireBitmap.getHeight() / 2));
fire.draw(canvas, controls.charPosition.x, controls.charPosition.y);
canvas.restore();
你可能知道,像这样画我的火会让它围绕自己的中心旋转,就像我的角色一样。但我希望它围绕我的角色旋转,这样看起来火是从他的枪里出来的。
有任何想法吗?如果有任何不清楚的地方,请在评论中告诉我。谢谢!