这很基础,但我无法弄清楚出了什么问题。基本上,我正在尝试在我的某个对象的特定区域周围画一个圆。我在构造函数中初始化了一个ShapeRenderer
(称为srDebugCircle),并在render()
方法中有一个循环来绘制每个对象。
for (GameObject object : levels.get(LEVEL_INDEX)) {
if (object.getType() == ObjectType.SWINGING_SPIKES) {
object.draw(batch);
srDebugCircle.begin(ShapeType.Filled);
srDebugCircle.circle(object.getxPos() + object.getWidth()/2, object.getyPos(), object.getWidth()/2);
srDebugCircle.setColor(Color.BLACK);
srDebugCircle.end();
}
if (object.getType() == ObjectType.COIN && (Coin) object).isVisible()) {
object.draw();
}
...
}
问题在于,当我添加圆形代码时,我只能看到15个对象中的4个。当我删除或注释它时,它的工作方式就像往常一样 - 然而,在这两种情况下,我都无法看到一个填充为黑色的圆形。
我特别指的是这部分:
srDebugCircle.begin(ShapeType.Filled);
srDebugCircle.circle(object.getxPos() + object.getWidth()/2, object.getyPos(), object.getWidth()/2);
srDebugCircle.setColor(Color.BLACK);
srDebugCircle.end();
有人能看出我为什么会遇到这个问题吗?