Я создал кучу прямоугольников, используя цикл for, а затем добавил их в список массивов. Я учил, что рендеринг будет похож на то, как вы даете userdata из box2d.Как визуализировать несколько фигур в Libgdx?
sr.setProjectionMatrix(camera.combined);
sr.begin(ShapeRenderer.ShapeType.Filled);
for(Rectangle r : rectangles)
sr.rect(r.x, r.y, r.width, r.height);
sr.end();
проблема заключается в том, что после того, как сюда цикл закончится, прямоугольники не оказывается больше, я знаю, что это происходит потому, что вы не делаете фактический прямоугольник, но только с помощью shapeRenderer, чтобы нарисовать фигуру с помощью атрибуты прямоугольников. Есть ли способ сделать это, что похоже на то, как вы делаете спрайт?
Это точно так же, как вы визуализируете спрайт. Вы должны отображать их при каждом вызове 'render()', потому что экран перерисовывается в каждом кадре, как и в SpriteBatch. – Tenfour04
Я знаю, но в формах вы не визуализируете фактический прямоугольник, sr.rect (r.x, r.y, r.width, r.height). В спрайте вы делаете фактический спрайт следующим образом: sprite.draw (пакет). Вы просто получаете атрибуты прямоугольника, чтобы shapeRenderer рисовал фигуру. но не фактическая форма прямоугольника. –