Cocos2D Астероиды

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

Спасибо.


person Andrew    schedule 05.07.2010    source источник


Ответы (2)


Простой способ

Немного о векторах. http://chortle.ccsu.edu/VectorLessons/vectorIndex.html

Движение обычно рассчитывается путем добавления вектора, масштабированного по временной дельте, к текущему положению. (Разговоры о математике делают простые вещи такими сложными).

В основном: new_Pos = old_Pos + mov_Vec * time_delta

Таким образом, изменяя mov_Vec, вы можете увеличивать/уменьшать скорость.

Вы также можете сделать это на x,y new_x = old_x + mov_x * time_delta

Использование библиотеки физики

Если вы используете библиотеку физики, вы можете применить силу к объекту, чтобы переместить его. Вы также можете установить угловую скорость, если хотите, чтобы он вращался.

Если бы вы использовали Box2d, вы бы сделали что-то вроде этого:

body->ApplyImpulse( b2Vec2(1,1), body->GetWorldCenter() );

Есть разница между приложением силы и импульсом в box2d

Некоторые сайты для проверки

person HyperCas    schedule 05.07.2010
comment
Применение силы означает, что сила постоянна, как гравитация, тогда как импульс мгновенный, как удар. - person Aram Kocharyan; 26.09.2011

Движение дирижабля в космосе довольно легко смоделировать... Я не думаю, что для этого вам нужна библиотека. Корабль имеет вектор скорости: в зависимости от вашего метода ввода, вы должны добавить вектор только для изменения скорости (или уменьшить по модулю при торможении, если торможение разрешено). Просто ограничьте максимальный модуль корабля, и все готово.

Извините, если это не совсем ответ на ваш ответ. HIH

person AkiRoss    schedule 05.07.2010