Skocz do zawartości

Odbijanie się od krzywych obiektów


Rekomendowane odpowiedzi

Jeśli chodzi o odbicie światła to sprawa się mocno komplikuje jeżeli sprite/maska jaka się odbija od powierzchni jest większa od 1 pix, po punkt przyłożenia znajdzie się o te parę pixeli wcześniej więc kąt odbicia się trochę zmieni. Czepiam się trochę bo na początek powinno wystarczyć :P ale tal tylko chciałem zauważyć.

Odnośnik do komentarza
Udostępnij na innych stronach

pokombinuj moze z !place_free(x,y) i sprawdzasz czy w jakims rogu jest wolne itd i wtedy wyliczasz jakos i dajesz hspeed i vspeed-a odpowiedniego .. chociaz tak trudno
Michał, jak nic nie wiesz to się ..., ok?

 

Opiszę to na przykładzie badania kąta terenu platformówki, w td podobnie.

Najprościej sprawdzić coś takiego za pomocą kilku (najprościej - 2) punktów kontrolnych.

Po prostu - przesuwasz (w pętli oczywiście) obydwa punkty kontrolne, umieszczone po obu stronach bohatera (coś jakby koła :P), maksymalnie na dół, póki nie kolidują z terenem.

Później obliczasz kąt pomiędzy dwoma punktami, i voila :P

 

Choć ten sposób ma wadę - jest niedokładny.

Jeśli punkty są za blisko siebie - kąt będzie wyliczany zbyt "skokowo", niedokładnie

Ale z kolei jeśli będą za daleko - to jeśli np. pomiędzy punktami będzie górka - system kolizji jej nie "zauważy".

 

Najlepiej to zrobić całą linią punktów, i odpowiednio ich pozycje przeanalizować, że tak to nazwę.

Odnośnik do komentarza
Udostępnij na innych stronach

No i wszystko byłoby fajnie, tylko że to są wyścigi z lotu ptaka więc pojęcia dołu zbytnio nie ma. No ale za to podsunąłeś mi pewien pomysł, zobaczę czy coś da się z tym zrobić :)

 

EDIT: Problem rozwiązany, dziękuję za odpowiedzi :)

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...