我一直在制作一个新游戏,我刚刚制作了我的第一个动画,一个爆炸。
问题是这样的。爆炸精灵表为 1200x100,由 12 个 100x100 帧组成。爆炸动画很好,除了起源表现奇怪。我希望爆炸居中,所以我指定 50、50,就像我在过去的游戏中所做的那样。它以 Y 方向为中心,但在 X 方向上仅略微移动。
经过一番摆弄后,我注意到如果我将原点设置为 600、50(精灵表宽度的一半),它会正确居中。这是没有意义的。我以前使用过这个动画代码,从来没有遇到过这个问题。我已经确保所有值都被正确传递,并且目标和源矩形看起来是正确的......我被难住了!
我测试了 Monogame,在 XNA 和 monogame 之间发生了一些事情。我已经为任何有兴趣自己下载和检查的人制作了这个示例。正如您将看到的,在 XNA 版本中,黑点应该在中间,但在单机游戏版本中,它偏离了中心。
不确定是什么原因造成的。矩形或 spritebatch.draw 的区别?或者也许是使用monogame内容项目处理纹理的方式。任何帮助是极大的赞赏!!!
要运行它,您需要安装 xna 4.0 以及 monogame 3.0 http://www.filedropper.com/testanimation