Faire voler un cube Unity3d

unity3d, script

a marqué ce sujet comme résolu.
Auteur du sujet

Bonjour, j’ai crée ce code:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CubeTest : MonoBehaviour {
    public string Hello;
    float life = 100;
    public float speed = 1.5f; //vitesse cube
    public Rigidbody cube;

    // Use this for initialization
    void Start () {
        Debug.Log (Hello + "You have" + life + "%");
        cube = GetComponent<Rigidbody> ();
            cube.mass = 2;
            cube.drag = 0;
            cube.isKinematic = false;
        cube.AddForce (Vector3.up * 10);
    }


    // Update is called once per frame
    void Update () {
        transform.position += new Vector3 (0, 2, 0) *Time.deltaTime;
    }
}

`

On gros, je voulais seulement faire "voler" le cube sur l’axe des z, vers le haut mais sa donne ça:https://gyazo.com/a4308faec561c6f8fa4818dade776ae4 Lien J’ai trouvé la solution d’enlever lecsharp *Time.delta.time; mais cela re-donne ceci https://gyazo.com/2074ee9ccd8cf9604c2f20e70c6ffb5c , le cube s’envole trop vite

Édité par PixarFilmz-

+0 -0

Bonjour,

Je ne suis pas un pro en Unity3D, mais j’ai été confronté à ce genre de problème sur un prototype de pinball… donc j’ai peut-être une piste.

Il y’a une force de gravité réaliste de -9.81 m/s qui est appliquée par défaut sur l’axe Y (ça peut se régler dans Edit -> Project Settings -> Physics), donc si tu veux appliquer un vol statique sur ton cube il faudrait logiquement appliquer la force inverse sur Vector3.Up.

En outre, il me semble que tu mélanges deux aspects: l’interaction physique (qui utilise le moteur physique) via rigidbody.addforce, et un déplacement purement géométrique via transform.position.

Si tu ne fais qu’un transform.position et que tu analyses en debug la force de ton rigidbody, tu verras qu’elle est à 0…

Édité par anonyme

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte