Так что я работаю над игрой, по сути, с видом сверху на шар.Когда я нажимаю на шар, я в основном хочу запустить его в заданном направлении.Это была бы мгновенная сила (подумайте, ударяя по мячу в бассейне).Я пытаюсь использовать applyImpulse, чтобы сделать это.
Пока у меня есть:
cpBodyApplyImpulse(sprite.body,
cpBodyLocal2World(sprite.body, cpv(0.0, 1.0)),
cpBodyLocal2World(sprite.body, cpv(0.0, 0.0))
);
Насколько я понимаю, 2 вектора, которые принимает эта функция - это "мировые координаты«так что я делаю, визуализирую все в относительных к телу координатах и затем преобразую их в мировые координаты.
Из моего приведенного выше кода, я бы подумал, что шар запустится прямо без вращения, потому чтовектор в положительном направлении у применяется в центре тяжести.Тем не менее, мяч в конечном итоге идет вправо, вращаясь бесконтрольно.Любые идеи, почему это происходит, и как мне добиться того, что я пытаюсь сделать?