0

我正在制作游戏,目前遇到了图形抖动的问题。当您按下 AWSD 键时,它从顶部开始抖动。抖动从顶部开始并蔓延到整个屏幕。这是一个视频文件:https ://dl.dropboxusercontent.com/u/94218355/javaw%202013-08-30%2010-36-45-171.avi

这是游戏文件:https ://dl.dropboxusercontent.com/u/94218355/Game.rar 游戏文件是这样你可以自己测试的。请查看 Screen.java,因为我认为这是隐藏错误的地方。

4

2 回答 2

0

这是一个有根据的猜测,因为没有可用的来源。问题很可能与您处理输入的方式有关,java2d 游戏中的输入存在一个常见错误,因为如果按键是通过KeyListener接口注册的,则按键之间存在固有的延迟。如果你按住一个键 (a) 你会期待aaaaa..什么,但你实际得到的是a|inputlag|a|inputlag|...这个延迟非常大(比通常的 60 FPS 高得多),所以当你按住键来移动相机时,相机看起来很紧张.

简单的解决方案是对按键使用布尔标志,并在按下按键后将其设置为 true,在松开按键后将其设置为 false,请参阅我的示例代码here。或使用键绑定

于 2013-08-30T16:09:31.240 回答
0

您应该使用双缓冲或翻页来避免抖动。

于 2013-08-30T15:49:03.483 回答