2

我做了一个小射击游戏,两艘船互相射击。我使用paintComponent 的方法来绘制或移动对象,但由于某种原因,它在每台计算机上以不同的速度运行。

我寻找解决方案并对我的游戏进行了一些修改,例如在线程中绘制和移动对象。现在它在每台计算机上以相同的速度运行。另外,如果我改变大小。但问题是我使用了 J3DTimer.getValue()。

为了使用这个库,我下载了 Java3d。如果计算机没有此库或安装,我的游戏将无法运行。我怎么解决这个问题?我应该告诉所有人设置Java##吗?:))

我也尝试使用标准 System.currentTimeMillis(),但是我的游戏运行速度很慢......有什么想法吗?

4

1 回答 1

2

从 Java 1.5 开始有一个方法叫做System.nanoTime(),它通常比System.currentTimeMillis()(取决于底层硬件的能力)精确得多。

我认为System.nanoTime()应该是J3DTimer.getValue(). 这样您就可以消除对 Java3D 库的依赖。

于 2010-03-19T23:54:51.573 回答