comment ajouter du rebond à un objet dans l'unité


Réponse 1:

Il peut y avoir plusieurs façons.

Une façon peut être d'ajouter un matériau physique au collisionneur et de définir son rebond à 1 et son frottement à 0.

Si votre objet a un corps rigide, vous pouvez également obtenir le même résultat avec un script.

Attachez le corps rigide à votre objet de jeu et au collisionneur. Le mur doit également avoir un collisionneur et une étiquette de mur. Attachez le script ci-dessous à votre objet et apportez les modifications nécessaires.

vitesse du flotteur public = 10; public Rigidbody2D rb; Vector3 pushRight; Vector3 pushLeft; // Utilisez ceci pour l'initialisation void Start () {rb = GetComponent (); pushRight = nouveau Vector3 (5f, 0f, 0f); pushLeft = nouveau Vector3 (-5f, 0f, 0f); } // La mise à jour est appelée une fois par image void Update () { } void OnCollisionEnter2D (Collision2D autre) { if (other.gameObject.tag == "Mur") { Debug.Log ("pushRight"); rb.AddForce (vitesse pushRight *); } if (other.gameObject.tag == "Mur") { Debug.Log ("pushLeft"); rb.AddForce (vitesse pushLeft *); } }}

Réf:

Essayer de faire rebondir un objet sur un mur