我一直在製作一款新遊戲,而我剛剛在第一部動畫中放入了爆炸。動畫來源無法正常工作Monogame 3.0
問題是這樣的。爆炸spritesheet是1200x100,由12個100x100框架組成。 爆炸動畫很好,除了起源表現奇怪。我希望爆炸是以中心爲中心的,所以我指定了50,50,就像我以前在前幾場比賽中所做的那樣。這在Y方向上居中,但在X方向上只有輕微移動。
經過一番搗鼓之後,我注意到如果我將原點設置爲600,50(Spritesheets寬度的一半),它會正確居中。這沒有意義。我之前使用過這個動畫代碼,從來沒有這個問題。我確保所有的值都被正確地傳遞,並且目標和源矩形看起來是正確的...我被淹沒了!
我測試了Monogame,XNA與monogame之間正在發生一些事情。 我已經爲任何有興趣下載和檢查自己的人制作了這個示例。 正如你所看到的,在XNA版本中,黑點應該是中間的,但是在monogame版本中偏離中心。
不知道是什麼造成這種情況。矩形或spritebatch.draw差異?或者可能是使用monogame內容項目處理紋理的方式。任何幫助是極大的讚賞!!!
要運行這個你需要安裝XNA 4.0以及3.0 monogame http://www.filedropper.com/testanimation
http://monogame.codeplex.com/releases/view/102870
你使用的是MonoGame還是XNA?兩者的行爲是否相同?起源應該是從我相信的sourcerectangle中獲取的,所以這可能是MonoGame中的一個錯誤。在MonoGame中發現這種錯誤將會令人驚訝,但仍然如此。 – Asik 2013-03-05 18:26:50
使用遊戲。那是我想的最後一件事情,那可能是一個monogame錯誤。雖然如我所說,矩形看起來是正確的,正如你所說,找到這樣的東西會令人驚訝。無論如何,我會測試,導致舊遊戲,它可以正常工作XNA – Hardycore 2013-03-05 18:28:32
什麼是Animation.Initialize方法在做什麼? – craftworkgames 2013-03-06 01:32:32