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

Fizyka w 3D - jak się za to zabrać.

Ostatnio zmodyfikowano 2015-03-04 17:21
Autor Wiadomość
RazzorFlame
Temat założony przez niniejszego użytkownika
Fizyka w 3D - jak się za to zabrać.
» 2015-03-02 16:05:44
Witam, pisząc silnik do gry 3D nastał czas na napisanie modułu fizycznego. To co mam jak na razie to:
- wykrywanie kolizji - Trójkąt-Trójkąt (uwzględniając różne skale, translacje i rotacje)
- wykrywanie kolizji - Geometria-Geometria (geometria jest zbudowana z pozycji (3D Vector) oraz indeksów poszczególnych trójkątów.

Wiem teraz, że powinienem napisać grawitację (co nie jest zbyt ciężkie) i to zrobię. Tylko co dalej?
1. Jeżeli wykryje kolizję to co? Wiem, że powinienem wtedy ustawić odpowiednią prędkość obrotu. Nie wiem jak obliczyć siłę z jaką ma się odbić.
2. Jak obliczyć kąt lotu z siły?
3. Jak obliczyć kąt odbicia?
4. Jak wykryć czy obiekt ma się zsuwać z np. stromego zbocza?

Jakie artykuły powinienem przeczytać (nie mówię tylko o artykułach dotyczących tych czterech pytań, tylko ogólnie co jeszcze mi będzie potrzebne)?
P-127553
aksen
» 2015-03-02 17:15:23
Pewnie powinieneś zasymulować prawa fizyki, a więc posłużyć się odpowiednimi wzorami.

1. Jeżeli wykryje kolizję to co? Wiem, że powinienem wtedy ustawić odpowiednią prędkość obrotu. Nie wiem jak obliczyć siłę z jaką ma się odbić.
siłę z którą ma się odbić czy prędkość?
- zasada zachowania pędu
- zasada zachowania energii
Możesz też założyć, że część energii jest tracona podczas odbicia (tak jak to jest w rzeczywistości, wtedy prędkość po odbiciu zmaleje)
Dużo tu zależy od rodzaju materiałów z których wykonane są zderzające się obiekty.

2. Jak obliczyć kąt lotu z siły?
Opisz dokładniej o co chodzi.

3. Jak obliczyć kąt odbicia?
Kąt padania jest równy kątowi odbicia (przynajmniej w przypadku odbicia od płaskiej powierzchni)
Warto do tego jeszcze dołożyć zmianę toru lotu spowodowaną grawitacją (przyciąganiem ziemskim)
Tematy:
Swobodny spadek.
Rzut pionowy do góry.
Rzut pionowy w dół.
Rzut poziomy.
Rzut ukośny.

4. Jak wykryć czy obiekt ma się zsuwać z np. stromego zbocza?
Poczytaj równi pochyłej, tarciu i współczynniku tarcia.

W przypadku świata wykonanego z materiału o takich samych właściwościach symulacje będą w miarę proste.
Gdy użyjesz różnych materiałów np. metal, guma , szkło wtedy fizyka troszkę się skomplikuje (każdy materiał będzie się zachowywał trochę inaczej).
Do wszystkiego możesz jeszcze dodać opory powietrza, czy wody  w których leci/jedzie dany przedmiot.

Nie jestem specjalistą w tym temacie i może ktoś inny odpowie ci bardziej wyczerpująco :)
P-127555
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2015-03-02 17:32:32
Co do pytania 2. to przepraszam, nie było pytania.
P-127556
aksen
» 2015-03-04 03:03:11
Tu masz darmowy i legalny skrypt na ten temat. Na końcu jest spis literatury.
http:/​/informatyka.umcs.lublin.pl​/files/skrypty2012​/mikolajczak_fizyka_dla_grafikow_komputerowych.pdf

PS. Lepiej znam się na fizyce i matmie niż na grach. Jak będziesz miał pytania pisz na gg: 1440220
P-127654
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2015-03-04 17:21:50
Po dłuższym zastanowieniu doszedłem do wniosku, że nie ma sensu pisać czegoś co już wiele razy zostało napisane. Użyje Nvidia PhysX.

Dziękuję i zamykam.
P-127711
« 1 »
  Strona 1 z 1