UNITY Почему персонаж двигается рывками телепортируясь?
public void Jump(InputAction.CallbackContext context)
{
if (isGrounded)
{
rb.AddForce(Vector2.up * jumpForce, ForceMode2D.Impulse);
}
}
void Update()
{
//transform.Translate(direction * Time.deltaTime * speed);
rb.MovePosition((Vector2)transform.position + (direction * speed * Time.deltaTime));
}
private void OnCollisionExit2D(Collision2D coll)
{
if (coll.gameObject.CompareTag("Platform"))
{
isGrounded = false;
}
}
private void OnCollisionEnter2D(Collision2D coll)
{
if (coll.gameObject.CompareTag("Platform"))
{
isGrounded = true;
}
}
}
Вот код, использовал новую систему ввода, персонаж падает с гравитацией 0.001 при выставленной 1 и двигается рывками какими-то рандомными сам по себе + телепортируется вверх (пробел не жму). Если через transform.Translate, то всё нормально, но физическое движение красивее. Что делать?