Navigation▲
Tutoriel précédent : accéder aux GameObjects |
Tutoriel suivant : instancier des objets |
I. Vidéo▲
Cliquez pour lire la vidéo
II. Ce qu'il faut retenir▲
II-A. Les quaternions▲
Les quaternions permettent de calculer les rotations dans Unity 3D.
Un quaternion est constitué de quatre composants : x, y, z et w. Ce dernier représente l'angle de rotation pour une rotation autour de l'axe constitué par x,y,z.
Les quaternions possèdent l'avantage de ne pas souffrir du Gimbal Lock et peuvent facilement être interpolés.
II-A-1. Pointer un objet vers la caméra▲
Le but est de faire en sorte que l'objet pointe toujours vers la caméra. Pour cela, on utilise la fonction LookRotation() de la classe Quaternion.
II-A-2. Adoucir le pointage▲
Maintenant, nous allons utiliser la fonction Slerp(), de la classe Quaternion, qui effectue une interpolation entre deux quaternions.
#pragma strict
private var target
:
Transform;
private var direction
:
Vector3;
private var speed
:
float =
0
.
1
;
function Start
(
) {
target =
GameObject.Find
(
"Main Camera"
).
transform;
}
function Update
(
) {
direction =
target.
position -
this.
transform.
position;
transform.
rotation =
Quaternion.Slerp
(
transform.
rotation,
Quaternion.LookRotation
(
direction),
Time.
deltaTime*
speed);
}
II-A-3. Mimer une rotation▲
Finalement, nous cherchons à reproduire la rotation de la caméra à notre objet :
#pragma strict
private var target
:
Transform;
private var direction
:
Vector3;
private var speed
:
float =
0
.
1
;
function Start
(
) {
target =
GameObject.Find
(
"Main Camera"
).
transform;
}
function Update
(
) {
direction =
target.
position -
this.
transform.
position;
transform.
rotation =
Quaternion.Slerp
(
transform.
rotation,
target.
rotation,
Time.
deltaTime*
speed);
}
III. Commenter▲
Vous pouvez commenter et donner vos avis dans la discussion associée sur le forum, ou encore, poser vos questions dans le forum Unity.
IV. Remerciements▲
Nous remercions « ToutApprendre » pour l'élaboration et la réalisation de ces vidéos. Vous pouvez retrouver sa chaîne YouTube en suivant ce lien.
Navigation▲
Tutoriel précédent : accéder aux GameObjects |
Tutoriel suivant : instancier des objets |