Page 1 sur 1

[RESOLU] [DB-AL] problème avec la rotation de la camera et le CharcterController

Publié : 16 Mai 2018 14:00
par FriteCoca
Bonjour, j'ai voulus faire un script ou les mouvements de la caméra ( 3 eme personne ) sur l'axe x définissent la direction ou se rendra le Player.

Mais quand je déplace la caméra sur l'axe Y et bien le perso s'envole, je sais au moins que la raison de cet effet secondaire est que la direction est choisis en fonction de la camera donc forcement si je bouge l'axe y le player aussi


Je précise que les deux morceaux de code ci-dessous sont dans 2 fichiers différents.

Voici le script pour les mouvement de la camera :

Code : Tout sélectionner

private void LateUpdate()
        {
            Vector3 dir = new Vector3(0,0, -5);
            Quaternion rotation = Quaternion.Euler(rotY,rotX,0);
            camTransform.position = targetCam.position + rotation * dir; // targetCam = pivot pour la camera
            camTransform.LookAt(targetCam.position); // camTransform = gamobject camera
        }
Et voici celui pour les déplacement du personnage

Code : Tout sélectionner

     else if(var.camState != true)
            {
                move = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));

                Vector3 forward = camT.transform.TransformDirection(move); // camT = gameobject camera


                forward *= speed;
                player.Move(forward * delta); // player = CharacterController 
Cordialement,

Re: [DB-AL] problème avec la rotation de la camera et le CharcterController

Publié : 16 Mai 2018 18:01
par Max
Bonsoir,

Ben d'instinct, en lisant rapidement ton code, je passerais la composante y de forward à 0:

Code : Tout sélectionner

Vector3 forward = camT.transform.TransformDirection(move); // camT = gameobject camera
forward.y=0;

Re: [DB-AL] problème avec la rotation de la camera et le CharcterController

Publié : 17 Mai 2018 18:16
par FriteCoca
Merci beaucoup ! Comme un idiot j'avais essayé via move.y à la place de forward.....