我正在用Java和LWJGL制作游戏。
基本上我想在屏幕上写我的游戏的fps,但我真的不明白我应该怎么做。
我在想它与Graphics类相关的东西,我是对的吗?
Graphics g = new Graphics();
g.setColor(Color.YELLOW);
g.setFont(new Font("Impact", Font.PLAIN, 20));
g.drawString(fps + " FPS", 20, 30);
g.dispose();
这段代码给我一个错误..就是说图形类的构造函数没有正确实现。
有什么想法吗?
答案 0 :(得分:2)
要绘制,您需要原始Graphics
对象的绘制句柄,而不是自己创建新对象。
据我所知,对于基本游戏,您的控制类应该扩展BasicGame
,提供render
方法,您可以从中获取Graphics
对象。< / p>
我想你需要做的是覆盖那个方法,如下所示:
public void render(GameContainer container, Graphics g) throws SlickException {
//grab graphics g here and use it.
}
对于基本模板,请查看here。
答案 1 :(得分:0)
你不能只是从头开始创建新的Graphics实例,并希望它能够绘制你想要的和你想要的地方。
图形上下文是从其他图形上下文获得的 通过在组件上调用getGraphics来创建。
如果你想用LWJGL
将sime文本放在屏幕上,那么搜索确切,你会发现很多解决方案。即使在youtube。