0
幾個月前,當我製作二維背景滾動遊戲時,我需要製作一個背景循環,使其看起來像遊戲角色正在移動,所以我使用以下算法循環背景 - >遊戲背景滾動/循環算法
int w=backgroundImage.getWidth();
int h=backgroundImage.getHeight();
int desX,desY;
for(int x=0;x<w;x++)
{
for(int y=0;y<h;y++)
{
int px=backgroundImage.getRGB(x, y);
desX=x-2;
desY=y;
if(desX<0)
{
desX=w+desX-1;
}
backgroundImage.setRGB(desX, desY, px);
}
}
但應用此算法循環整個背景後,我發現整個遊戲變得緩慢。
這個算法有什麼好處,或者有更好的循環背景算法嗎?
任何代碼片斷將不勝感激。
謝謝。
這是在一個單獨的線程? – drum
是的,是的。 @drum –
這是什麼語言? Java的?什麼類型是backgroundImage?我的建議是使用大小爲(寬* 2)的圖像(可能位於面板或其他位置),並且只是移動圖像的座標,而不是混淆像素。 – Dukeling