我正在制作一个使用 ShapeRenderer 制作 arcs 的游戏,因为我需要围绕中心旋转这些弧所以我在渲染方法中仅编写了代码begin
和end
,我在create method 中初始化它们,
但随着弧数增加,游戏变得越来越慢越来越慢。我有最多13个弧和最少2个弧。
它运行良好,直到很少说8弧,之后变慢。
如果他/她可以提供帮助请任何人,请帮助...
提前谢谢。
渲染方法有5个循环,我没有任何选择去除它们。
这是在创建:
for (int i = 0; i < 13; i++) {
random = randomGenerator.nextInt(5);
a[i] = new Arc(arcColors[random]);
arcs_visible[i] = 1;
pointercolor[i] = a[i].getArcColor();
a[i].begin(ShapeRenderer.ShapeType.Line);
}
这是渲染:
private void draw_one_arc(int i, double radius, float startangle, float sweep) {
if (arcs_visible[i] == 1 && collides[i] == false) {
a[i].arc(pointerorigin.x + pointer.getWidth() / 2, pointerorigin.y + pointer.getWidth() / 2, (float) radius, startangle, sweep, 100);
}
}
`