现在答案不必以我正在使用的编程语言(Java)为中心,它实际上是一个一般性的问题。我正在制作一个2d平台,并自动生成一个超过30000瓦片(300x100地图)的地形。现在,这显然造成了如此多的延迟和闪烁。
我能想到的一种防止这种情况的方法是只在屏幕上移动对象,但这对我来说真的很难想通。
这是一个侧滚轴,他移动到中间,当他在中间时,平台开始移动,这就是它变得如此密集的时候。每次swing计时器滴答作响时,它必须为整个30000块的循环执行这些操作。
有没有人愿意开导我?也许在正确的方向上推动一下就太好了。
谢谢!
发布于 2011-12-12 04:31:05
为此,您可能会使用MVC的一些变体,您将别无选择,只能移动模型中需要移动的所有内容--程序的非GUI逻辑表示,但这样做的开销不应该很大。您只需要移动视图中的内容--程序的GUI部分--这些内容位于视图的视区(在屏幕上)内,并且这将是地图上对象的一个非常有限的子集。
https://stackoverflow.com/questions/8469930
复制相似问题