Filar Społeczności Czołg Krymski Opublikowano 4 Sierpnia 2014 Filar Społeczności Udostępnij Opublikowano 4 Sierpnia 2014 Oto jest pytanie. Jest to w ogóle możliwe? Używam ósemki dla ścisłości (boję się gms) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 FPS to klatki na sekunde w grze (to chyba wiesz ;) ) Nie wiem czy da się ale po co ci coś takiego ??? PS : GM 8 górą :D ! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Czołg Krymski Opublikowano 4 Sierpnia 2014 Autor Filar Społeczności Udostępnij Opublikowano 4 Sierpnia 2014 widzisz, chodzi mi o to, że prędkość gry zależna jest od ilości klatek na sekundę i przez to chociażby na szybkim komputerze gra jest za szybka i kongruentnie na wolnym za wolna Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Musiał byś użyć np HRT i trochę matmy :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 sle pierniczycie. GM opiera sie o metode fixed time steps, a autorowi zalezy na uzyskaniu delta time steps. robi sie to prosto: liczenie delta time polega na policzeniu roznicy czasu miedzy aktualna, a poprzednia klatka (wynik przydatny najczesciej w sekundach). jakis obiekt kontrolera gry w roomie: GML (create) _lastTimeStamp = current_time; global.deltaTimeMillis = 0; global.deltaTimeSeconds = 0; GML (step) var timeStamp = current_time; global.deltaTimeMillis = timeStamp - _lastTimeStamp; global.deltaTimeSeconds = global.deltaTimeMillis * 0.001; _lastTimeStamp = timeStamp; uzyskane delta time mnozy sie przez wszelkie wartosci, ktore dotycza animacji w czasie. czyli wszelkiego rodzaju zmiany pozycji: GML (step) x += _jakis_speed * global.deltaTimeSeconds; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Madness Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Co do uniezależnienia prędkości obiektu od ilości klatek, to chyba można skorzystać np. z takiego czegoś: boost = maksymalna_ilość_klatek/aktualną_ilość_klatek A potem np. hspeed = prędkość*boost. Wydaje mi się, że to da rade. Przykładowo: maxFPS - 60, ilość FPS - 60, prędkość - 3 prędkość = 3*(60/60) prędkość = 3 --------------------------- maxFPS - 60, ilość FPS - 30, prędkość - 3 prędkość = 3*(60/30) prędkość = 6 Myśle, że to wystarczy. EDIT: Ale widze, że YXE już wstawił wersje standardową. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Co do uniezależnienia prędkości obiektu od ilości klatek, to chyba można skorzystać np. z takiego czegoś: boost = maksymalna_ilość_klatek/aktualną_ilość_klatek A potem np. hspeed = prędkość*boost. Wydaje mi się, że to da rade. Przykładowo: maxFPS - 60, ilość FPS - 60, prędkość - 3 prędkość = 3*(60/60) prędkość = 3 --------------------------- maxFPS - 60, ilość FPS - 30, prędkość - 3 prędkość = 3*(60/30) prędkość = 6 Myśle, że to wystarczy. EDIT: Ale widze, że YXE już wstawił wersje standardową. To by było bardzo nieprecyzyjne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Madness Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Fakt, nie jest to tak precyzyjne co delta na bazie naliczanego czasu, ale zawsze to coś. W pewnym stopniu zniwelowałoby to różnice w prędkościach. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności ANtY Opublikowano 4 Sierpnia 2014 Filar Społeczności Udostępnij Opublikowano 4 Sierpnia 2014 ja tam w gmie jechałem na GML zmienna * 1 / fps i działało dla mnie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jakim Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Wykonujesz dodatkową operację i tracisz na dokładności, ale jak kto woli ;). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 FPS się aktualizuje co sekundę więc gg. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 5 Sierpnia 2014 Udostępnij Opublikowano 5 Sierpnia 2014 Precyzja current_time jest ograniczona (update dokonuje się co 16+2/3 ms). Jeśli chcesz zrobić porządny delta time, to masz dwie opcje: 1. ściągnąć sobie High Resolution Timer i zastosować kod YXE 2. przejść na darmowego GM: Studio, gdzie masz nie tylko wbudowany timer działający na zasadzie powyższego, ale też wbudowaną funkcję delta_time, która dokonuje obliczeń za ciebie (zalecana metoda). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Czołg Krymski Opublikowano 5 Sierpnia 2014 Autor Filar Społeczności Udostępnij Opublikowano 5 Sierpnia 2014 w sumie racja, czas jednak stawić czoła faktu, jakoby dalsze użytkowanie na ósemce ma już wymiar zaledwie nostalgiczny. Sajonara, dzięki za konstruktywną gównoburzę :)) 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ę