unity2D Перемещение к неподвижному объекту вызывает невесомость - PullRequest
0 голосов
/ 26 февраля 2019

Пожалуйста, посмотрите на фото .Есть два объекта.

left circle object = circle colider2D + rigidbody2D(freeze Rotation Z, script for move )

    Rigidbody2D rigid;
    float moveX;

    void Start()
    {
       rigid = gameObject.GetComponent<Rigidbody2D>();
    }


    void PlayerMove(){
        moveX = Input.GetAxisRaw("Horizontal");
        rigid.velocity = new Vector2(moveX * 5f, rigid.velocity.y);
    }

    void Update(){
        PlayerMove();
    }

right square object = square colider2D + rigidbody2D(freeze positionY, freeze positionX, freeze Rotation Z)

Я могу перемещать круг из стороны в сторону.Пока я нажимаю на клавиатуру и подталкиваю круг к правой стене, гравитация не работает.

Я не знаю почему.Надеюсь, гравитация сработает, даже если круг коснется стены.

Как я могу предотвратить проблему?

1 Ответ

0 голосов
/ 26 февраля 2019

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

Rigidbody setup

Material setup

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...