Придать мгновенное ускорение 2D объекту unity в нужном направлении, в зависимости от угла поворота

Вот код, который у меня получился. Проблемная зона внизу, в функции AddForce(). Скажите нужна ли она или можно сделать что-нибудь по-другому?

private ArrowRotation zRotateArrow;
private Rigidbody2D rb2D;

private Vector3 vcMove;
public float speed;

public GameObject ArrowObj;

void Awake()
{
    zRotateArrow = ArrowObj.GetComponent<ArrowRotation>();
    rb2D = GetComponent<Rigidbody2D>();

    speed = 28f;
}

void FixedUpdate()
{
    if (Input.GetKeyDown(KeyCode.A))
    {
        transform.Rotate(0f, 0f, zRotateArrow.rotateZ);
        rb2D.AddForce(this.transform.up, ForceMode2D.Impulse);
    }
}

Ответы (1 шт):

Автор решения: Andrew

Что бы придать мгновенное ускорение необходимо использовать не AddForce, а задать velocity на необходимое значение.

→ Ссылка