Badfly a écrit :Un bond, ou se téléporter comme tu veux.
Position bah c'est la position en axe Y, X (transform.position)
et rotation bah c'est la rotation de la caméra sur son axe Y(transform.rotation)
Mon problème c'est que quand je souhaite faire pivoter ma caméra, elle va se téléporter (et je précise, elle ne se téléporte pas sur son axe X,Y,Z, mais juste l'angle Y va admettons passer de 0, à 45 d'un coup).
Petit exemple concret. Je lance le jeu, je fais pivoter la caméra sur son axe Y, c'est fluide, c'est jolie.
Je la place à transform.rotation.Y = 45.
Ensuite, j'appuis sur Espace, la caméra va donc se remettre à 0 (transform.rotation.Y = 0)
Et à ce moment là, si je souhaite la faire pivoter de nouveau, même juste très légèrement, elle va se remettre directement à
transform.rotation.Y = 45.
Pourtant, après cette "téléportation", "bond", on peut appeler comme on veut hein, je peux la faire pivoter sur son axe Y avec fluidité, il n'y a plus de "bond". (Mais si je la recentre grâce à Espace, elle va refaire un "bond")
Le je place la caméra à transform.rotation.Y = 20, puis espace. Quand je voudrais faire pivoter la caméra, elle se remettra d'abord à transform.rotation.Y = 20 avant de se pivoter normalement.
Le bout de script que j'ai mis est le même que plus haute (sans le if) tout les scripts que j'ai mis sont sur le même fichier. Et ce script est collé sur la caméra.
Et je pense pas que ça intéresse que je mette les bouts de code quand je déplace la caméra avec les flèches. ^^
Mais je répète, la caméra pivote bien sur elle même, elle se déplace bien sur son axe X, Y.
Quand j'appuis sur espace, elle se place bien derrière le jouer, et s'oriente vers le joueur. Tous cela fonctionne bien. Donc a part les bouts de code pour faire pivoter la caméra, et pour replacer la caméra, je ne vois pas ce qui peut être utile.
Et le tout est dans la fonction Update de la caméra.
Et nan, ta solution "au piff" ne fonctionne pas
Salut, je vais peut être dire une bêtise mais d'après ton code, tu renseigne ta rotationY lorsque tu bouge ta souris, on va dire que ça stock 20 (rotation d'avant + input souris).
Ensuite ton code de la barre d'espace s'active quand tu appuie dessus. la cam se repositionne.
Puis tu retouches à ta souris, c'est normal que rotationY ait toujours 20 . Tu devrais pas mettre à jour ta rotationY DANS le code de ta barre d'espace? Genre à la fin de la méthod ? En gros, comme le dis Evereal, mais pas la remettre à zéro, la mettre à la position actuelle ?
Edit : Oups méga grilled par Boubouk, mais il le dit mieux que moi, c'était l'idée que j'essayais d'exprimer