2013-08-18 4 views
2

Я новичок в программировании Java, и я хочу узнать больше. Я слышу около libgdx и box2d, и я хочу немного поиграть с ними, я хочу создать поле с объектом, который изменяет гравитацию при касании экрана. Моя проблема заключается в поле, я хочу, чтобы осуществить что-то вроде этого:Как создать такую ​​форму

Shape I want to create

Но я не знаю, как эта форма называется, смотреть через Интернет, и как я должен держать в памяти этой формы ...

Можете ли вы дать мне несколько советов и примеров, пожалуйста? :)

ответ

1

Формы, подобные тем, которые называются «сплайнами». Это несколько разных типов.

В терминах Box2D вы должны создать тело с помощью Edge-Fixture, и Box2D сохранит эту фигуру, как только она будет создана в мире.

Я думаю, вы, вероятно, пытаетесь достичь своего рода «земли». Таким образом, вы можете проверить эту статью: http://www.iforce2d.net/blog/2013-07-20

+0

другой нуб вопрос :(как создать простой сплайна в Box2d .. мой бедный поиск Google didint найти пример –

+0

@ RareşSmeu Как я уже говорил, эквивалент сплайн будет пограничный Крепеж. Сплайн не существует в Box2D, вы можете его только аппроксимировать. Это означает, что вам нужно будет пройти через ваш красивый, извилистый сплайн и использовать дискретные координаты, чтобы аппроксимировать кривую через край. LibGDX также имеет три различные реализации сплайнов, которые вы можете использовать для сделайте так. Вы даете Spline некоторые базовые вершины, чтобы определить, как это должно выглядеть, и затем шаг (скажем, каждые 10 пикселей) через сплайн в направлении X, чтобы вычислить значение Y. – noone

0

Вы можете использовать ChainShape класс в Box2D (или JBox2D). Пожалуйста, обратите внимание на этот большой ресурс: http://natureofcode.com/book/chapter-5-physics-libraries/

Существует часть использования класса ChainShape вместе с vec2, который определяют точки цепную в.

chainshape example