[MY-AL]Animations non trouvées sur perso mais existantes dans Project

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
jmhoubre
Messages : 21
Inscription : 05 Oct 2019 22:05

Re: [MY-AL]Animations non trouvées sur perso mais existantes dans Project

Message par jmhoubre » 07 Nov 2019 16:21

On peut peut-être comparer avec des ">" ?

Code : Tout sélectionner

float valeurAComparer = 7f;

if (valeurAComparer > 5.0) {
    // trucs à faire
    return; // pour cesser de comparer
} else {
    if (valeurAComparer > 4.9) {
        // trucs à faire
        return;
    } else {
        if (valeurAComparer > 4.8) {
            // trucs à faire
            return; // pour cesser de comparer
        } else {
            if (valeurAComparer > 0) {
                // cas par défaut
                // trucs à faire
            }
        }
    }
}

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 5133
Inscription : 28 Avr 2014 11:57
Localisation : Toulouse

Re: [MY-AL]Animations non trouvées sur perso mais existantes dans Project

Message par boubouk50 » 07 Nov 2019 18:38

C'est le même problème: une comparaison.
4.8999999 ou 4.9000001 ne donnera pas le même résultat.
Soit tu utilises Approximately () doit tu castes en Int pour un résultat fiable.

Qui plus est, la vitesse étant interpolée, tu passeras par 4.9 en descendant de 5.0 à 4.8 ce qui aura pour de lancer une animation pour rien. Avec la possibilité d'une double saute dans les animations.
J'ajoute aussi que l'utilisation de l'Update () peut être proscrite pour éviter des calculs intermédiaires inutiles.
Autant faire correctement les choses.
"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

Avatar de l’utilisateur
freepl
Messages : 831
Inscription : 20 Mai 2012 19:33
Localisation : salon de provence

Re: [MY-AL]Animations non trouvées sur perso mais existantes dans Project

Message par freepl » 11 Nov 2019 17:58

Edit du msg d'hier que je croyais avoir supprimé.

Le script d'animation sur le perso marche sans toucher à trajetVl.

Voilà le code

Code : Tout sélectionner

using UnityEngine;
using System.Collections;

public class PietonAnimationeEscalier : MonoBehaviour {
	
	private TrajetVl trajetVl;
	public Animation anim;
	public string idle, walk,descente,montee;
	public bool chien;
	
	void Start () {
		if (chien)
			trajetVl = transform.parent.parent.GetComponent<TrajetVl>();
		else 
			trajetVl = transform.parent.GetComponent<TrajetVl>();
	}
	
	// Update is called once per frame
	void Update () {
		switch((int)Mathf.Round(trajetVl.kmh*10))
		{
		case (0): // vitesse égale 4 km/h sur le déclencheur
			anim.Play(idle);
			break;
		case (35): // vitesse égale 3.5 km/h sur le déclencheur
			anim.Play(montee);
			break;
		case (25): // vitesse égale 2.5 km/h sur le déclencheur
			anim.Play(descente);
			break;
		default :
			anim.Play(idle);
			break;
		}
	}
}




Merci boubouk50

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 5133
Inscription : 28 Avr 2014 11:57
Localisation : Toulouse

Re: [MY-AL]Animations non trouvées sur perso mais existantes dans Project

Message par boubouk50 » 12 Nov 2019 10:23

Donc sujet résolu? Donc fermeture du sujet?
"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 « (C#) CSharp »