Unity 3D. Déplacement de caméra. Tutoriel 16

Ce tutoriel fait suite directe au tutoriel 15 dans lequel je vous expliquais comment changer de vue caméra. Dans celui-ci, nous allons voir comment déplacer la caméra principale vers les coordonnées de position et de rotation des 2 autres caméras qui serviront de repères.

Je vais pour cela utiliser la classe Ani.Mate que vous pouvez trouver sur le wiki d’Unity. Celle-ci est équivalente au système de Tween de flash.

Télécharger Ani.Mate

Vous pouvez voir le résultat final sur cette page.

Le code final est le suivant :

?View Code LANGUAGE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var cam1:GameObject;
var cam2:GameObject;
var cam3:GameObject;
 
function switchCam(){
cam2.active=false;
cam3.active=false;
 
yield WaitForSeconds(1);
 
aniCam(cam1,cam2,10);
yield WaitForSeconds(10);
 
aniCam(cam1,cam3,8);
 
}
 
function aniCam(arg1:GameObject,arg2:GameObject,arg3:Number){
Ani.Mate.To(arg1.transform,arg3,{"position": new Vector3(arg2.transform.position.x,arg2.transform.position.y,arg2.transform.position.z)});
 
Ani.Mate.To(arg1.transform,arg3,{"rotation":Quaternion.Euler(arg2.transform.eulerAngles.x,arg2.transform.eulerAngles.y,arg2.transform.eulerAngles.z),"drive":Ani.Drive.Slerp});
}
 
switchCam();
avatar

krys64

bla bla bla

Vous aimerez aussi...

7 réponses

  1. avatar vdgraphic dit :

    bravo pour ces tuto sur les cam ,ce site est bien parti

  2. avatar Kranf dit :

    toujours interessant ces petits tutos , j’avais d’ailleurs une question, penses qu on puisse encore simplifier la notation en remplaçant

    Ani.Mate.To(arg1.transform,arg3,{« position »: new Vector3(arg2.transform.position.x,arg2.transform.position.y,arg2.transform.position.z)});
    par
    Ani.Mate.To(arg1.transform,arg3,{« position »: new Vector3(arg2.transform.position)});

  3. avatar Yowan dit :

    Super! As-tu une idée comment on pourrait ajouter un effet de « ease-in/ease-out » entre les mouvements de caméra?

  4. avatar krys64 dit :

    Regarde dans la doc du script animate, tu as des ease expliqués

  5. avatar natmor dit :

    bonjour, ça marche très bien, et c’est exactement ce dont j’avais besoin ! sauf un détail… comment remplacer la caméra 3 par le FPS pour que je démarre ma visite temps réel après un survol caméra ?
    merci d’avance !!!

  6. avatar natmor dit :

    je veux dire le « first person controller » bien sûr…

  7. avatar Sandratra Niaina dit :

    merci pour ce tuto! mais la fonction Ani ne marche pas sur la dernière version de unity… y a t’il pas un autre script pour cela? merci

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.