1

数秒ごとに、ゲームをプレイしているウィンドウが一時的に消えてから再び表示されます。私は最新バージョンの Slick (Java のゲーム ライブラリ) を使用して Windows 7 を使用しています。私が使用しているコードは次のとおりです。

package Main;
import org.newdawn.slick.*;
public class Main extends BasicGame{

    public Main() {
        super("Flashing window issue");
    }

    @Override
    public void init(GameContainer gc) throws SlickException {
    }

    @Override
    public void update(GameContainer gc, int delta) throws SlickException {
    }

    @Override
    public void render(GameContainer gc, Graphics g) throws SlickException {
    }

    public static void main(String[] args) throws SlickException {
         AppGameContainer app = new AppGameContainer(new Main());
         app.setDisplayMode(800, 600, false);
         app.start();

    }
}

この問題を解決するにはどうすればよいですか?


これまでの進捗状況:

更新: 解決策はまだ見つかりませんが、フルスクリーン モードでゲームをプレイすると、ちらつきがなくなります。これが解決につながるのではないでしょうか…

更新 2: タスク マネージャーを監視すると、ゲームが点滅している間、タスク マネージャーのステータスが「応答していません」であることが示されます。

更新 3: マウスがゲーム領域を離れたときにのみ発生するようです (ゲーム ウィンドウがフォーカスを失うかどうかに関係なく)。

更新 4 - 現在の回避策:

app.setMouseGrabbed(true); // force the mouse to stay in the game area

次に更新(...)で:

// exit when escape is pressed:
if (gc.getInput().isKeyDown(Input.KEY_ESCAPE)) {
       gc.exit();
   }
4

1 に答える 1

2

slick2d には詳しくありませんが、ダブル バッファリングの概念はありますか? ちらつきが発生した場合にオンにしたいものです。

于 2012-06-22T19:57:35.490 に答える