Caméra Android

Toutes les questions sur le développement Mobile, y compris la partie script.
Fasol0
Messages : 64
Inscription : 07 Avr 2015 11:43

Caméra Android

Message par Fasol0 » 24 Avr 2015 10:01

Bonjour à tous!

Après de nombreux essais pour obtenir une caméra optimale sur mon portage android, je vois finalement que la caméra la plus "fluide" s'obtient lorsque je laisse les commandes à la souris (commandes traduites en tactile directement par Unity). La caméra ne se déplace pas mais peut tourner pour regarder à 360°. Mais j'ai quand même un souci, chaque fois que je repose le doigt sur l'écran, la caméra se positionne à une autre position (un peu random). En gros, ce que je veux c'est que seul glisser le doigt (et non toucher) doit faire bouger la caméra

Voilà le code:

Code : Tout sélectionner

#pragma strict

var x_rotation : float = 0.0;
var y_rotation : float = 0.0;
var x_sensitivity : float = 5.0;
var y_sensitivity : float = 5.0;

function Update () {

x_rotation += Input.GetAxis("Mouse X")*x_sensitivity;
y_rotation -= Input.GetAxis("Mouse Y")*y_sensitivity;

transform.eulerAngles = Vector3(y_rotation,x_rotation, 0);
}
Toute aide sera bienvenue!

Fasol0
Messages : 64
Inscription : 07 Avr 2015 11:43

Re: Caméra Android

Message par Fasol0 » 28 Avr 2015 11:29

J'ai finalement trouvé la solution, en fait un nouveau toucher sur la tablette est interprété comme un déplacement instantané de la souris, et fait donc tourner rapidement la caméra.

Pour ceux qui rencontreraient le même souci, il suffit de rajouter ça au début de l'update:

Code : Tout sélectionner

if(Input.GetMouseButtonDown(0))
	{
		return;
	}

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6228
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Caméra Android

Message par boubouk50 » 28 Avr 2015 11:37

Tu devrais utiliser Input.touches plutôt pour du tactile.
Ça te permettrai de gérer les phases et donc de faire réagir la caméra seulement à la bonne phase moved.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Fasol0
Messages : 64
Inscription : 07 Avr 2015 11:43

Re: Caméra Android

Message par Fasol0 » 29 Avr 2015 15:29

En fait j'avais commencé par là, mais le résultat est plus fluide lorsque je laisse Unity traduire les commandes souris. et en rajoutant la condition de mon précédent poste ainsi que celle-ci (sans laquelle j'avais encore quelques petits sauts de caméra par moment):

Code : Tout sélectionner

if(Mathf.Abs(movX)<accelMax && Mathf.Abs(movY)<accelMax)
avec movX reflétant Mouse X et movY reflétant Mouse Y

j'obtient un résultat très satisfaisant

merci quand même!

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6228
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Caméra Android

Message par boubouk50 » 29 Avr 2015 16:25

C'est quand même bien plus simple d'utiliser les classes déjà faites d'Unity plutôt que de refaire à sa sauce pour le même résultat... Sachant que ça devrait prendre 5 minutes grand max à faire...
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »