[RESOLU] Bouger la camera a l'aide de la souris

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
Kamiloo95
Messages : 72
Inscription : 06 Avr 2015 10:14

[RESOLU] Bouger la camera a l'aide de la souris

Message par Kamiloo95 » 27 Juin 2016 18:05

Bonjour à tous,
Je voudrais bouger ma camera avec ma souris d'une manière très précise : je voudrais que ma camera reste dans une sorte d'orbite qui entoure mon objet, et que lorsque je relâche le clic gauche de ma souris, la camera revient d'elle même passant par le même chemin.

Voici une image qui pourrait vous aider a comprendre.

Image

Je n'ai vraiment aucune idée de comment faire,
une aide serait la bienvenue.

Merci d'avance.
Dernière édition par Kamiloo95 le 04 Juil 2016 14:20, édité 1 fois.

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: Bouger la camera a l'aide de la souris

Message par Moi 1971 » 27 Juin 2016 18:16

Bonjour,
As-tu regardé ici ? : http://docs.unity3d.com/ScriptReference ... round.html
est-ce en rapport avec ta question?

Kamiloo95
Messages : 72
Inscription : 06 Avr 2015 10:14

Re: Bouger la camera a l'aide de la souris

Message par Kamiloo95 » 27 Juin 2016 20:17

Bonjour, oui c'est parfaitement ça, je viens de tester avec des bouton du clavier et ma camera tourne bien autour de mon objet.
Comment je pourrais faire en sortes de faire tourner ma camera autour de mon objet avec la souris cette fois ci ?

Voici mon code pour l'instant :

Code : Tout sélectionner

	public Vector3 rotatePosition;

	void Start () {
	
	}
	
	void Update () {

		gameObject.transform.Translate(Vector3.forward * Input.GetAxis("Mouse ScrollWheel"));

		if (Input.GetKey (KeyCode.D)) {
			transform.RotateAround (rotatePosition, Vector3.down, 50 * Time.deltaTime);
		} else if (Input.GetKey (KeyCode.Q)) {
			transform.RotateAround (rotatePosition, Vector3.up, 50 * Time.deltaTime);
		}
	
	} 
EDIT :
J'ai reussi a l'aide de la souris, voici mon code :

Code : Tout sélectionner

		if (Input.GetMouseButton (0)) {
			transform.RotateAround (rotatePosition, Vector3.up, Input.GetAxis ("Mouse X") * 10);
		}
Une idée pour que ma souris revienne automatiquement a sa position de depart ?

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: Bouger la camera a l'aide de la souris

Message par Moi 1971 » 27 Juin 2016 20:43

Oui, il y a plusieurs solutions.
Tu peux utiliser un empty placé à la même place de départ que la caméra. Quand la caméra aura bougé et qu'elle devra revenir, tu utilise l'Empty comme cible. Ou tu mémorise la position dans une variable avant le déplacement de la caméra pour être la cible de retour.
En recherchant sur Google tu trouveras plein d'exemples sur ce sujet car il y a plein de façons de faire suivant le rendu visuel que tu veux.

Kamiloo95
Messages : 72
Inscription : 06 Avr 2015 10:14

Re: Bouger la camera a l'aide de la souris

Message par Kamiloo95 » 27 Juin 2016 23:04

Je pourrais peut être réutiliser Transform.RotateAround mais dans le sens inverse ?

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: Bouger la camera a l'aide de la souris

Message par Moi 1971 » 28 Juin 2016 17:45

Oui

Répondre

Revenir vers « Scripting »