Bonjour,
Je début avec unity, et j'ai très peu de connaissances en programmation alors je viens poser une petite question.
Je cherche le moyen le plus simple et logique pour intervertir deux objets ou plutôt changer un objet en un autre objet.
Exemple: j'ai un carré et quand je clique dessus, je voudrais que ça devienne un cercle ou autre forme.
j'ai un peu cherché mais je n'ai pas trouvé de réponse alors je me retourne vers la commu pour voire si on peut me proposer quelque chose d’intéressant merci !
[RESOLU]Switch entre deux sprite C#
[RESOLU]Switch entre deux sprite C#
Dernière édition par RenNoun le 22 Août 2020 04:27, édité 1 fois.
Re: Switch entre deux objets C#
Bonsoir,
Une des solutions serait de désactiver le premier GameObject (GameObject.SetActive()), puis d'activer le second objet, et de la positionner aux même coordonnées que le premier (Transform.position)
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ
Re: Switch entre deux objets C#
Bonjour Max, merci pour ta réponse,
Au début c'est un peu prêt ce que je fessais mais, plus j'avançait moins c'était bon.
Exemple
mais biensur je plaçait l'objet aux coordonées par moi même, le souci c'est que si j'ai 10 objets ou plus a changer en un même objet. ça n'as plus aucune valeur.
j'ai essayé aussi avec
mais la encore j'ai un problème avec ChangeSprite(newSprite)
je continue a chercher le souci mais voilà, quand on débute c'est un peu compliqué ^^'
Au début c'est un peu prêt ce que je fessais mais, plus j'avançait moins c'était bon.
Exemple
Code : Tout sélectionner
public GameObject etoile;
void OnMouseDown()
{
if (Input.GetMouseButtonDown(0))
{
etoile.SetActive(true);
}
}
j'ai essayé aussi avec
Code : Tout sélectionner
public SpriteRenderer spriteRenderer;
public Sprite newSprite;
void ChangeSprite()
{
spriteRenderer.sprite = newSprite;
}
void Start()
{
spriteRenderer = gameObject.GetComponent<SpriteRenderer>();
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
ChangeSprite(newSprite);
}
}
je continue a chercher le souci mais voilà, quand on débute c'est un peu compliqué ^^'
Re: Switch entre deux objets C#
Ok j'ai trouvé le souci je pense
Dans
Dans
Code : Tout sélectionner
public SpriteRenderer spriteRenderer;
public Sprite newSprite;
void ChangeSprite(Sprite newSprite)
{
spriteRenderer.sprite = newSprite;
}
void Start()
{
spriteRenderer = gameObject.GetComponent<SpriteRenderer>();
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
ChangeSprite(newSprite);
}
}
Re: Switch entre deux objets C#
j'étais dans une approche 3D.
Effectivement, en 2D et pour des sprites, c'est plus simple.
Effectivement, en 2D et pour des sprites, c'est plus simple.
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ