我决定最近开始研究一个小型2D游戏。我已经有一些引力工作了。我开始在java上变得更好但是我从来没有在这个项目之前使用过java AWT或任何与渲染相关的东西,基本上这里是我的问题:
我有一个角色,每个蜱行走1个像素,这太慢了。如果我将它提升到2个刻度,它太快了,而且角色几乎正在运行。我想要介于两者之间,但问题是X和Y存储为int
,如果我将它们更改为float
,我必须将它们转换为int
与(int)之类的东西会导致移除浮点数。
我所尝试的是每2个刻度而不是1个刻度更新角色的X或者使游戏循环变慢但它看起来相当不稳定。如果有人有一个很好的解决方案,请留言。谢谢!
答案 0 :(得分:5)
从模型中拆分视图(并查找MVC模式!)
在模型中使用浮点坐标,仅在可视显示中将它们转换为整数像素。