1
我正在使用XNA開展我的第一個2D遊戲,並且遇到了一些問題。 授予運行影響到我的雪碧,我經歷了SpriteSheet滾動使用此代碼(右運行):使用XNA的SpriteSheet動畫
if (AnimationDelay == 6)
{
if (CurrentFrameR.X < SheetSizeR.X)
{
++CurrentFrameR.X;
}
else
{
CurrentFrameR.Y++;
CurrentFrameR.X = 1;
}
if (CurrentFrameR.Y >= SheetSizeR.Y)
{
CurrentFrameR.X = 0;
CurrentFrameR.Y = 0;
}
AnimationDelay = 0;
}
else
{
AnimationDelay += 1;
}
xPosition += xDeplacement;
}
而這些都是使用的對象:
Point FrameSizeR = new Point(29, 33);
Point SheetSizeR = new Point(5, 1);
Point CurrentFrameR = new Point(0, 0);
int AnimationDelay = 0;
我有SpriteSheet當精靈正在運行左邊時,使用相同的代碼。 一切工作正常我會說90%的時間,但其他10%的精靈動畫停留在一個框架的SpriteSheet,在兩個方向(左和右),它保持卡住,直到我關閉程序。 事情是我無法弄清楚爲什麼,因爲它從來沒有發生在同一時間..有時10,15,30秒後,有時甚至在啓動! 任何想法爲什麼? 在此先感謝,讓我知道,如果你需要的代碼