Page 1 sur 1

[RESOLU] Comment détruire des GameObjects renommés ?

Publié : 21 Jan 2022 21:24
par Frederic
Bonsoir

j ai un bout de code qui instancie un gamobject et les renomme, comment faire pour pour détruire les gameobject renommés ?


Code : Tout sélectionner

        for (int i = 1 ; i < 3 ; i++)
        {    
            position2  =Convert.ToSingle (position2 + FeneCreaOutil.Section1Dec ) ;
            var clone1 = Instantiate (Ligne);
            clone1.transform.Translate  (-position2,0,0);
            clone1.name = "LigneAB" + (-i).ToString ();
        }

Re: Comment détruire des Gamobjects renommes ?

Publié : 21 Jan 2022 22:10
par Max
Bonsoir,

pour détruire un GameObject, tu passes par sa référence, donc changer son nom ne devrait pas poser de problème.

Re: Comment détruire des Gamobjects renommes ?

Publié : 21 Jan 2022 22:58
par Frederic
Ca me supprime que le dernier gameobject !

Re: Comment détruire des Gamobjects renommes ?

Publié : 21 Jan 2022 23:50
par jmhoubre
Sans la ligne du Destroy, difficile de deviner ce que tu fais.

Deux méthodes :
1) tu détruis l'objet référencé :

Code : Tout sélectionner

GameObject go = Instantiate (myPrefab);

// Un peu plus loin, mais dans la même portée que go.
Destroy(go);
2) tu as plusieurs objets à instancier, et à détruire plus tard :

Code : Tout sélectionner

public class Example
{
	private List<GameObject> listToDestroy = new List<GameObject> ();
	
	// Méthode où les objets sont instanciés.
	private void MakeObjects ()
	{
		for (i = 0; i < objectToMakeNum; i++)
		{
			GameObject go = Instantiate(myPrefab);
			listToDestroy.Add (go);
		}
	}
	
	// Méthode où les objets sont détruits.
	private void DestroyObjects ()
	{
		foreach (GameObject go in listToDestroy)
		{
			Destroy (go);
		}
		listToDestroy.Clear ();
	}
}

Re: Comment détruire des Gamobjects renommes ?

Publié : 22 Jan 2022 07:57
par Frederic
ca fonctionne, ;-)
Merci