StartCourtine nie działa

Programowanie w Unity.

StartCourtine nie działa

Postprzez Stami » 06 Cze 2019, 22:06

Witam mam prosty program:

https://pastebin.com/7GapiWU9 (wstawione tak, bo forum z jakiegoś powodu blokuje mi normalny kod)

Efektem jest wypisanie w konsoli kolejno 1 i 3,
więc StartCourtine nie działa, dlaczego?

Z góry dziękuje za pomoc
Stami
 
Posty: 6
Rejestracja: 12 Paź 2017, 21:18
Has thanked: 0 time
Been thanked: 0 time

Re: StartCourtine nie działa

Postprzez EvilArev » 06 Cze 2019, 22:30

Pomyliłeś chyba IEnumerable z IEnumerator.
EvilArev
 
Posty: 381
Rejestracja: 14 Kwi 2013, 15:32
Has thanked: 0 time
Been thanked: 0 time

Re: StartCourtine nie działa

Postprzez Hostur » 07 Cze 2019, 06:17

To jedno.
Druga sprawa jest taka, że korzystasz z funkcji których dokumentacji nie czytasz, po co przekazujesz te n parametr do korutyny skoro twoja korutyna go nie przyjmuje?
Nie używaj tego typu wywołań - mam na myśli po stringu.
Kod: Zaznacz wszystko
private void Awake() => StartCoroutine(MyCoroutine());
private IEnumerator MyCoroutine()
{
  UnityEngine.Debug.Log("MyCoroutine");
  yield return null;
}


Później zrobisz nawet przypadkiem jakiegoś cleana i Ci wywali wszystkie korutyny bo visual nie będzie widział ich użycia.
Jest to dużo kosztowniejsze (wołane reflekcją) i dużo gorsze rozwiązanie.
Jedyna akceptowalna forma to InvokeRepeating dlatego że jest całkiem sensownie zoptymalizowane.
Hostur
 
Posty: 734
Rejestracja: 05 Sie 2015, 07:36
Has thanked: 0 time
Been thanked: 0 time


Wróć do Skrypty

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 4 gości