I am vader Opublikowano 15 Grudnia 2013 Udostępnij Opublikowano 15 Grudnia 2013 Pytanie techniczne apropo async eventów: Jeśli przyjdzie np. 5 asynców w czasie 20ms, a prędkość rooma wynosi 50, co oznacza, że te 5 asynców mieści się w czasie 1 stepa, czy wszystkie 5 calbacków zostanie rozwiązane w momencie ich przyjścia czy zostaną rozłożone na 5 następujących stepów? Przejrzałem dokumentacje i nie znalazłem nic na ten temat. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bagnz0r Opublikowano 24 Lutego 2014 Udostępnij Opublikowano 24 Lutego 2014 Pytanie techniczne apropo async eventów: Jeśli przyjdzie np. 5 asynców w czasie 20ms, a prędkość rooma wynosi 50, co oznacza, że te 5 asynców mieści się w czasie 1 stepa, czy wszystkie 5 calbacków zostanie rozwiązane w momencie ich przyjścia czy zostaną rozłożone na 5 następujących stepów? Przejrzałem dokumentacje i nie znalazłem nic na ten temat. Moim zdaniem raczej dostaniesz callbacki bez względu na aktualny speed room'a... Z tego co wiem nie są raczej zależne od wątku renderowania/aktualizacji. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 24 Lutego 2014 Udostępnij Opublikowano 24 Lutego 2014 działa to jak w każdym systemie eventów asynchronicznych - runner odbiera natywne eventy w osobnym wątku, z którego przerabia je na zjadliwe dla GMa i pcha do wątku gry, który wykonuje je (wszystkie będące w kolejce) w następnej ramce aktualizacji (czyli bez rozkładania ich na jakieś stepy - wsio zostaje na raz wykonane), pchając do odpowiednich obiektów. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 24 Lutego 2014 Administratorzy Udostępnij Opublikowano 24 Lutego 2014 Samo słowo "asynchroniczny" powinno powiedzieć Ci wszystko na temat tego jak mają się te eventy do stepów czy drawów. Jak masz 5 callbaków na raz, to możliwe, że wszystkie wykonają się między jednym stepem. Ba, w GM:Studio jest nawet szansa, że wystąpią dwa stepy między jednym drawem, bo ten też jest nieco asynchroniczny. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pablo1517 Opublikowano 7 Kwietnia 2014 Udostępnij Opublikowano 7 Kwietnia 2014 Troche necro, ale myślę, że warto dopowiedzieć, że mimo wszystko te callbacki wykonają się w takiej kolejności w jakiej przyszły. Tzn. że nie musisz się martwić o to, że np. połączy sie na raz 5 osób i dostaną to samo ID bo to raczej nie możliwe, chyba, że im whardcodujesz to samo id xD. Po prostu async event wywoła się 5 raz jeden po drugim, ale to nie znaczy, że w różnych stepach. Myślę, że jest do tego oddzielny wątek zarezerwowany. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 7 Kwietnia 2014 Administratorzy Udostępnij Opublikowano 7 Kwietnia 2014 Dlatego się nazywają async ;) Draw i step tez podobno chodzi asynchronicznie, tzn. jak jest wolne urządzenie ze słabym procesorem graficznym, to step może lecieć 30k/s, a draw 15k/s i będzie desynchron (aczkolwiek czy tak faktycznie jest nie wiem). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się