Расчет силы, скорости и расстояния в бурундуке - PullRequest
2 голосов
/ 04 июня 2011

Я новичок в Cocos 2D, Chipmunk и Box 2D.

Я начал основную документацию и начал разрабатывать игры.

В настоящее время я работаю с chipmunk.

Я застрял в нескольких точках, и они выглядят следующим образом.

В моем приложении есть игрок, который пинает футбольный мяч, и мяч перемещается на расстояние в соответствии с силой, примененной ударом игрока.,

Я в замешательстве из-за ..

  • Как сделать так, чтобы все тело было статичным, и чтобы его одно движение могло двигаться, чтобы оно могло ударить по мячу.

  • Как рассчитать силу, вектор, расстояние и т. Д.

  • Как перейти к следующему экрану, если мой шар выходит за пределы текущего экрана.

Пожалуйста, дайте мне знать URL, из которого я могу легко получить все типы примеров для применения бурундука.

1 Ответ

2 голосов
/ 26 марта 2012

Прежде всего, вы должны сначала изучить бурундука, а затем попытаться решить вашу проблему. Я вижу, что многие люди просто хотят, чтобы их проблема ушла, не прикладывая усилий к ее решению. Вот некоторые результаты Google по учебным пособиям по Бурундуку.

https://www.google.co.cr/webhp?sourceid=chrome-instant&ix=sea&ie=UTF-8&ion=1#sclient=psy-ab&hl=en&site=webhp&source=hp&q=chipmunk%20tutorials&oq=&aq=&aqi=&aql=&gs_l=&pbx=1&fp=37838802d5e34660&ix=sea&ion=1&bav=on.2,or.r_gc.r_pw.,cf.osb&biw=1680&bih=882

О 3 вопросах:

  1. Если вы изучаете бурундук или box2d, вы можете легко пойти и проверить различные настройки, от статического тела до суставов и плотности. В зависимости от того, что вы хотите сделать, решение может отличаться. Я предлагаю вам разобраться в этом.

  2. Вы можете использовать несколько функций для каждого зарегистрированного тела. Для box2d вы используете body->getAngle(), body->getLinearVelocity() и body->getPosition(). С помощью этих 3 функций вы можете рассчитать силу, вектор и расстояние от каждого объекта. Я уверен, что у бурундука что-то вроде этого.

  3. Действительно ?? PSEUDOCODE: if (ball.position OUTSIDE screen.bounds) nextLEVEL();

...