2015-05-09 2 views
1

У меня есть 2 класса; A и B.Libgdx визуализировать новый объект

A - класс символов, он содержит каждую деталь персонажа (позиция ...) B - класс, который получает класс A и рендер. Мне нужно создать другой объект, когда я касаюсь экрана. Я получил его, класс, кажется, содержит новые значения, но он не отображает их.

for (A a: aa) { 
    shapeRenderer.begin(ShapeType.Filled); 
    shapeRenderer.setColor(Color.RED); 
     shapeRenderer.circle(a.getBoundingCircle().x, a.getBoundingCircle().y, a.getBoundingCircle().radius); 
    shapeRenderer.end(); 
    } 

ответ

0

рекомендуется использовать лучшие имена. Вы уверены, что a.getBoundingCircle() отображает правильные данные, и уверены ли вы, что объекты A в aa и ваша программа соединяются внутри?

и я не смотрю б

+0

B - класс, который содержит код, который я разместил. aa - статический список, и каждый раз, когда выполняется конструктор, он будет добавлен в aa (который находится в классе B) – user4789408

0

Хорошо, ваша проблема новые значения не будьте renderized. Два варианта: Вы не используете цикл для рендеринга объектов. Ваши новые значения выходят за пределы экрана.

Когда вы получаете положение событий касания, вы получаете экран и скрипу, а не координацию игровой камеры, и вам нужно преобразовать их с помощью unproject. Например:

Vector3 touchPos = new Vector3(Gdx.input.getX(), Gdx.input.getY(), 0); 
camera.unproject(touchPos); 

touchPos сейчас находится в игре coordenates.

+0

Новый объект создается с теми же значениями первого – user4789408

Смежные вопросы