在 Java 开发的游戏中出现渲染问题
Problems with render in a game developing in Java
新年快乐!
我在 Java 学习游戏开发,我的 Render 方法出现问题。
当我用像这样的简单代码调用 render 方法时:
public void render() {
Graphics2D g = (Graphics2D) bufferStrategy.getDrawGraphics();
g.setColor(Color.black);
g.fillRect(0, 0, mainWindow.getWidth(), mainWindow.getHeight());
onRender(g);
g.dispose();
bufferStrategy.show();
}
然后渲染一个用红色绘制的简单圆环
但是我的 netbeans 和我的电脑变得非常非常慢。
当我在 Debian 终端中键入 top 时,我可以看到我在 "Java" 应用程序中的 cpu 使用率增加了 100%。
而且我不知道为什么。有人可以告诉我我做错了什么吗?
在 render/update 周期之间添加一个小的延迟,让 cpu 有时间处理你正在尝试做的事情,使用 sometng go like Thread.sleep(40)
(25fps)..假设某处有一个更新循环...
另请参阅 BufferStrategy
JavaDocs,其中有一个简单示例说明您应该如何使用它(不包括小延迟)
新年快乐!
我在 Java 学习游戏开发,我的 Render 方法出现问题。
当我用像这样的简单代码调用 render 方法时:
public void render() {
Graphics2D g = (Graphics2D) bufferStrategy.getDrawGraphics();
g.setColor(Color.black);
g.fillRect(0, 0, mainWindow.getWidth(), mainWindow.getHeight());
onRender(g);
g.dispose();
bufferStrategy.show();
}
然后渲染一个用红色绘制的简单圆环
但是我的 netbeans 和我的电脑变得非常非常慢。
当我在 Debian 终端中键入 top 时,我可以看到我在 "Java" 应用程序中的 cpu 使用率增加了 100%。
而且我不知道为什么。有人可以告诉我我做错了什么吗?
在 render/update 周期之间添加一个小的延迟,让 cpu 有时间处理你正在尝试做的事情,使用 sometng go like Thread.sleep(40)
(25fps)..假设某处有一个更新循环...
另请参阅 BufferStrategy
JavaDocs,其中有一个简单示例说明您应该如何使用它(不包括小延迟)