IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Unity Discussion :

Coroutine pas régulière


Sujet :

Unity

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Coroutine pas régulière
    Salut à tous,
    J'ai développé un petit jeu mais je me retrouve face à un problème :
    J'ai un système de spawn en place qui utilise le principe d'object pooling.
    La soucis c'est que le spawn est défini à X secondes, mais je me retrouve avec des sortes de vagues de spawn plutôt qu'un spawn continu. Je ne sais pas si j'ai été assez clair.
    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
     IEnumerator Spawn()
         {
             while (true)
             {
                 //yield return new WaitForSeconds(spawnWait);
     
                 //Getting random position of spawn on X axis
                 spawnPosition = transform.position;
                 spawnPosition.x = Random.Range(520f , 370f);
     
                 //Get a Fish with another method
                 GameObject fishSpawned = GetFish();
     
                //if Get fish returned a GO, then active it and spawn it at spawn pos
                 if (fishSpawned != null)
                 {
                 fishSpawned.transform.position = spawnPosition;
                 fishSpawned.SetActive(true);
                 }
     
                 yield return new WaitForSeconds(spawnWait);                
     
             }
         }
    Appellé dans ma fonction start avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    StartCoroutine("Spawn")
    Je n'arrive pas à situer mon problème et comment le régler.
    Merci d'avance

  2. #2
    Membre expérimenté Avatar de Tonton Nico
    Homme Profil pro
    Ingénieur
    Inscrit en
    Septembre 2017
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2017
    Messages : 398
    Points : 1 320
    Points
    1 320
    Par défaut
    Salut,

    Ce n'est pas tout simplement le fait que tu n'as pas beaucoup de Fish en jeu de libre? enfin j'imagine que ta fonction GetFish() peut ne rien ramener d'ou l'irrégularité de tes vagues

    Pourquoi ne pas instantier un GO Fish toute les X secondes simplement? cela n'irais pas donc ton jeu?
    TontonNico

    On me dit souvent que je ressemble à Einstein... mais plutôt à Frank que Albert

Discussions similaires

  1. [RegEx] Expression régulière qui ne fonctionne pas ?
    Par MaTHieU_ dans le forum Langage
    Réponses: 5
    Dernier message: 23/07/2007, 14h43
  2. [Pattern] Des expressions qui ne jouent pas à la régulière!
    Par Ravaka dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 21/04/2007, 15h28
  3. Réponses: 2
    Dernier message: 15/04/2007, 13h10
  4. Réponses: 3
    Dernier message: 20/02/2007, 15h48
  5. Réponses: 1
    Dernier message: 10/01/2007, 09h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo