我在JavaFX上运行游戏/模拟,当我开始时,添加AnimationTimer
来执行tick更新似乎是合理的。我的Entity
由Polygon
组成,保持其形状和位置。我通过Polygon
将Group
添加到了场景中,所有内容都像魔术一样呈现。但是,由于它是一个模拟,我现在想要在没有渲染的情况下运行数百万个滴答,以便前进到未来并查看结果。问题是,由于我的Entity
(x,y)位置在多边形内部,因此每次在动画中调用handle()
时,屏幕似乎都会更新。
分割游戏循环和渲染的正确方法是什么,只能在一定数量的刻度之后调用渲染?
我想创建我自己的MyPolygon类来保存模拟数据,然后在绘制的时候,每个实体创建一个多边形,但这对我来说似乎也有点过头了(但也许我' m错)。
另外,我不确定如何更改AnimationTimer上的每秒滴答率。所以我不确定它是否适合这种特殊需求。
这似乎是一个非常简单的设计选择,因此必须有一个适当的方法来使用JavaFX ...