Skocz do zawartości

Ranking

Popularna zawartość

Treść z najwyższą reputacją w 04.09.2017 uwzględniając wszystkie działy

  1. Czołg Krymski

    Animacje postaci

    nie no, jeżeli naprawdę jesteś rocznik 97, to siłą rzeczy musiałeś trochę tej wiedzy na matmie zgłębić. Szczerze mówiąc co jak co, ale podstawowa licealna matematyka jest jak najbardziej na miejscu jeżeli chodzi o tworzenie gier. Ale jedynie starczy ci szczątkowa znajomość właśnie trygonometrii i układu kartezjańskiego. To całkowicie starcza, by sprawnie się game makerem posługiwać na moje oko. Jeżeli rozumiesz naturę sinusoidy i masz przestrzenne wyobrażenie jak można ją przekształcać to nie miałbyś z tym najmniejszego problemu. A animowanie przy jej użyciu jest naprawdę proste. Przykładowo jeżeli do poruszania postaci wykorzystujesz zmienną speed, to starczy stworzyć jakąś nową zmienną od animowania np. tułowia postaci (anim=0;). Później w stepie starczy wpisać coś pokroju anim+=speed, a później rysując tułów w draw wystarczy do współrzędnej Y dodać coś w ten deseń: draw_sprite(tulow_spr,0,x,y+sin(anim/20)*20). I teraz sprawa wygląda tak - dziedzina sinusoidy jest zawsze w radianach, czyli jednostkach opartych na pi. Pełen okres sinusoidy wynosi 2 pi, czyli około 6,28. Teraz na chłopski rozum jeżeli speed gracza wynosi mniej więcej 3, to wyciągając sinus z anim ta sinusoida wykona pełen okres w ciągu zaledwie około dwóch stepów (2 pi/3), więc zdecydowanie za szybko. Dlatego trzeba zwykle podzielić to anim na jakąś sensowną liczbę, w tym przypadku 20. Wtedy zakładając, że prędkość rooma to 60, teraz sinusoida wykona jeden okres po mniej więcej właśnie 60 stepach, czyli sekundzie. Do tego starczy pamiętać, że amplituda sinusoidy wynosi 1 (czyli przyjmuje wartości od -1 do 1), więc jeżeli chcesz, by w tej animacji tułów wychylał się np na 20 pixeli, to mnożysz tego sinusa razy dwadzieścia. I to naprawdę wszystko, jeżeli coś pamiętasz ze szkoły to spokojnie szybko to łykniesz i będziesz się tymi sinusami posługiwał biegle. Do tego strasznie to satysfakcjonująca rzecz moim zdaniem :). Wielkim plusem takiego rozwiązania jest też to, że prędkość animacji jest już wtedy automatycznie uzależniona od prędkości gracza, a dodatkowo jeżeli gracz porusza się do tyłu (speed<0), to animacja również automatycznie się odwraca. Dobra, nie mam daru tłumacza, ale mogę szybko wykonać jakiś prosty przykład w game makerze 8.0. animacja.gmk
    1 punkt
  2. Threef

    Animacje postaci

    Z wykorzystaniem trygonometrii i podstawowej matematyki nie trzeba żadnego przykładu. Jeżeli zrobisz 2 nogi postaci i sprawisz żeby jedna noga miała y=ypostaci+sin(czas) a drugaa to samo tylko -sun() to już masz efekt o który chodzi.
    1 punkt
  3. Ranmus

    Forum wystartowało!

    Jak widać udało się wyeliminować błędy, tak więc miejmy nadzieję, że w sobotę (4.06.2004) forum zostanie wpełni skonfigurowane i ruszy pełną parą. Działy są w trakcie tworzenia (potem przyjdzie czas na tłumaczenie języka).
    1 punkt
Ten Ranking jest ustawiony na Warszawa/GMT+01:00
×
×
  • Dodaj nową pozycję...