iPhone - наклон для перемещения - PullRequest
0 голосов
/ 08 февраля 2011

В моей игре для iPhone (я использую cocos2d, не должно иметь большого значения), я хочу, чтобы это было так:

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

Любая помощь будет принята, спасибо.

1 Ответ

0 голосов
/ 08 февраля 2011

Вы можете использовать физический движок (я предпочитаю Бурундук, поскольку у него более простой API), чтобы применить инерцию и ускорение к системе из двух тел.Прикрепите связь фиксированной длины между телами и примените перетаскивание к обоим телам, но дайте одному телу больше сопротивления, чем другому.Прикрепите спрайт к средней точке этих двух тел, и его угол совпадает с углом между телами, при этом «фронт» спрайта направлен на тело с меньшим сопротивлением.

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

РЕДАКТИРОВАТЬ: В более недавнем проекте я работалметод с одним телом, использующий канавочное соединение (не уверен, что такое эквивалент Box2D) на теле с якорем в мире.Расположите якорь мира вдали от центра тяжести тела и на каждом шаге перемещайте якорь так, чтобы он оставался точно в том же положении относительно тела.Чем дальше от центра тяжести вы устанавливаете якорь, тем медленнее тело поворачивается в направлении движения.

...