我已经完成了一系列关于 J2ME 游戏开发的问题,在最近的一个问题中,Neil Coffey 评论道
作为一个附带问题——你真的想在 J2ME 游戏中达到 100 次/秒吗?正如我认为某人已经提到的那样,您实际上也应该睡到下一个所需的唤醒点,而不是每次都固定的持续时间。
出于某种原因,那件事留在了我的脑海中,现在我想要答案,我需要什么才能让我的游戏循环睡眠到所需的唤醒点,我真的不知道那个点在哪里 xD(理论上来说)。
为了反馈,这是我的游戏循环的简化版本:
public void run() {
Graphics g = this.getGraphics();
while (running) {
long diff = System.currentTimeMillis() - lastLoop;
lastLoop = System.currentTimeMillis();
input();
this.level.doLogic();
render(g, diff);
try {
Thread.sleep(10);
} catch (InterruptedException e) {
stop(e);
}
}
}
谢谢你的帮助!!