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.
Vous pouvez voir le résultat final sur cette page.
Le code final est le suivant :
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(); |

bravo pour ces tuto sur les cam ,ce site est bien parti
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)});
Super! As-tu une idée comment on pourrait ajouter un effet de « ease-in/ease-out » entre les mouvements de caméra?
Regarde dans la doc du script animate, tu as des ease expliqués
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 !!!
je veux dire le « first person controller » bien sûr…
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