Warsztat.GD

Programowanie => Matematyka i fizyka => Wątek zaczęty przez: lizzak w Kwiecień 24, 2010, 14:24:29

Tytuł: Liczenie kolizji a macierze
Wiadomość wysłana przez: lizzak w Kwiecień 24, 2010, 14:24:29
Witam!

Mam pytanie odnośnie liczenia kolizji, mam taki bounding box, jeżeli coś się w nim znajdzie to jest kolizja, wiadomo. Teraz tak swoim modelem obracam no i go przemieszczam, mogę jakoś nowe położenie i obrót wyliczyć z macierzy świata tego modelu ? Czy muszę w owej klasie trzymać wartość obrotu itp i wyliczać położenie wierzchołków sinsusami cosinusami itp
Tytuł: Odp: Liczenie kolizji a macierze
Wiadomość wysłana przez: Kuba D. w Kwiecień 24, 2010, 18:55:00
Łatwiej jest po prostu użyć sfer zamiast boxów, wystarczy wtedy tylko przesunięcie uwzględniać podczas liczenia kolizji.

Co do bboxóx to jeśli masz macierz modelu ( w OpenGL pobierasz ją tak: glGetFloatv(GL_MODELVIEW_MATRIX, nasza_macierz); ) to wystarczy przemnożyć wierzchołki bboxa przez tę macierz i dostaniesz przekształcone wierzchołki ( obrócone i przesunięte jak trzeba).