Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Fizyka skoku .

Ostatnio zmodyfikowano 2010-02-06 22:13
Autor Wiadomość
kamillo121
Temat założony przez niniejszego użytkownika
Fizyka skoku .
» 2010-02-06 20:25:51
Witam, otóż czy ktoś mógłby mi powiedzieć jak mam "stworzyć" fizykę skoku gracza(w 2D) ? Mam się wzorować ze wzorów które miałem na lekcji fizy  ?

Przy okazji ,jak jest z resztą fizyki w grach ? można ją wzorować na fizyce , którą mam w technikum czy w grach odbywa się to jakoś inaczej ?
P-13597
WunM
» 2010-02-06 21:01:36
Mam się wzorować ze wzorów które miałem na lekcji fizy  ?

Tak.

Nie zapomnij o obliczaniu (i poźniejszym korzystaniu z) delta time, gdyż to podstawa w różnej maści grach i symulatorach wykorzystujących fizykę.
P-13600
kamillo121
Temat założony przez niniejszego użytkownika
» 2010-02-06 21:07:44
A mógłbyś parę słów więcej ? o tym delta time itd .
Sam masz doczynienia z fizą w grach ?
P-13601
WunM
» 2010-02-06 21:50:46
Delta time to przyrost czasu. W bibliotekach takich jak np. allegro jest funkcja zwracająca aktualny czas, który minął od uruchomienia biblioteki. Załóżmy że ta funkcja nazywa się current_time().

C/C++
float time = current_time();
float delta_time;
while( true )
{
    // obliczamy delta time
    delta_time = current_time() - time
    time = current_time()
   
    //... główna pętla
    //... robisz coś np. rysujesz
}

Do czego to ustrojstwo służy? Nie wiemy ile czasu potrwa wykonanie instrukcji w pętli gdyż jest to uzależnione od uruchomionych procesów w komputerze itp. W każdym bądź razie raz będzie to np. 0.032s a raz 0.0892s (liczby z głowy). Aby pozbyć się tej rozbieżności:

1. Obliczamy delta time
2. Używamy delta time tam gdzie tego potrzeba

Ad.1 - Wyjaśnione u góry

Ad.2

Przykładowo obliczanie prędkości (wytłuszczone nazwy to wektory)

v = v + dt * a

Dzięki temu prędkość będzie ulegać zmianie zależnie od czasu a nie klatki, którą aktualnie renderujesz. Innymi słowy jest to o wiele dokładniejsze i realniejsze.

Sam masz doczynienia z fizą w grach ?

Mam, ale nie do końca w grach.
P-13605
DejaVu
» 2010-02-06 22:01:55
Chyba nie uważałeś zbytnio na fizyce jeśli nie wiesz co to jest delta czasu :P Po prostu poczytaj... fizyka w grach to temat rzeka.

PS. Do tego by ludkiem skakać nie trzeba stosować stricte wzorów fizyki.
PSS. Na forum znajdziesz nawet przykładowe kody w których był zaimplementowany skok
PSSS. Nawet ja to komuś poprawiałem i dotyczyło to platofmówki
PSSSS. google: site:forum.ddt.pl skok
PSSSSS. ;P
P-13607
kamillo121
Temat założony przez niniejszego użytkownika
» 2010-02-06 22:13:12
WunM , dzięki wielkie za pomoc , o to mi chodziło;]
 Panie Piotrze , fakt w gm fizę przespałem (koledzy +luźna lekcja = próźnia dotycząca wiedzy z fizy ) teraz też trochę ale zaczynam nadrabiać .
 To, że skok da się zrobić bez fizyki (wzorów i praw) w prostych gierkach to wiem , bo już nie raz robiłem takie ustrojstwa ale chciałem  troche bardziej "po fizycznemu" to zrobić ;-]
 Dzięki wszystkim za pomoc i udanego weekendu życzę ;]
P-13610
« 1 »
  Strona 1 z 1