Wpis z mikrobloga

#gamedev #unity3d

float v = Input.GetAxisRaw ("Vertical");

Do zmiennej v przypisujemy input osi wertykalnej, która sama w sobie działa na dwóch klawiszach, jak to widać na załączonym niżej obrazku, negatywny i pozytywny. Kumam, jedna linijka i ruch do przodu i do tyłu mamy z głowy.

ale...

Mógłby ktoś wyjaśnić na jakiej zasadzie działa ta cała oś wertykalna i jakby można było podpiąć pod jedną zmienną v ( ja myślę że to nadal działa podobnie jak przy mecanimie czyli 0 w spoczynku i kolejno -1 i 1 ale ja to juniorem w developingu na unity jestem, co ja tam wiem :< ) dwa przyciski dotykowe z osobnych skryptów/komponentów?

wołam tych co mogliby wiedzieć, @Wextor @jigsaw96 @TadeuszSynZygmunta tak z pamięci :/ .
M.....P - #gamedev #unity3d
 float v = Input.GetAxisRaw ("Vertical");
Do zmiennej v ...

źródło: comment_Lm2WH8JboW5ikH6tkl1CoY8eTwgyxBFf.jpg

Pobierz
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@MichaelP: "Vertical" to tylko nazwa osi, równie dobrze można by ją nazwać Pszemek, a potem pisać

float v = Input.GetAxis("Pszemek");

a jeżeli chodzi o pic related, to wartość tej osi wynosi 1 jeżeli wciśniesz strzałkę w górę albo W, -1 jak wciśniesz strzałkę w dól albo S, 0 jak nic z powyższych
  • Odpowiedz
@blisher: Czyli mówisz że jednak działa to jak napisałem w nawiasach podobnie jak w mecanimie?
Huh, no ale wątpliwości nadwątlone, będę wiedział teraz jak to podpiąć w jedną zmienną - dzięki, a do wyżej wymienionych, piszcie śmiało to wam wszystkim rzucę po plusie!
  • Odpowiedz
@MichaelP: Tak, tylko wartość tego GetAxis się zmienia płynnie, im większe sensitivity tym szybciej dąży do 1 (lub -1) i im większe gravity tym szybciej wraca do 0

@jigsaw96: a no to chyba oczywiste, można edytować/usuwać/dodawać osie
  • Odpowiedz
@jigsaw96: I te osie będą nadal w input, akurat w tym momencie tego nie potrzebuje, ale można wywnioskować że w ten własny sposób możnaby wyskryptować własną grę z gatunku "siatkówka glutów iksde".

@blisher: Spoko, nie potrzebuje płynności w poruszaniu się, w końcu jak wciskasz na klawiaturze klawisz do od razu masz 1, gałki są w padach ale jeszcze nie jestem na takim poziomie żeby samemu napisać gałkę, bo
  • Odpowiedz
@MichaelP: Ale nie zawsze chcemy od razu po wciśnięciu klawisza mieć wartość 1, np. w samochodówkach kiedy wciskamy A/D nie chcemy od razu mieć na maks skręconych kół w prawo/lewo bo autko nam się w-----e. I wtedy zamiast robić to w kodzie, robimy używając sensitivity.

Chociaż fakt, najczęściej się tego używa przy joystickach i myszy
  • Odpowiedz
@blisher: W samochodówkach też może być taki bajer że bo wciśnięciu w/s prędkość od zera rośnie nam do maksymalnej możliwej prędkości ustalonej dla danej marki gdzie 1 jest tą prędkością :> .
chociaż nie, to trochę inaczej wtedy działa, ale skręcanie to fakt :/ .
  • Odpowiedz
@MichaelP: jak nie wiedziałeś jak się zmieniają wartości dla v to czemu poprostu tego sobie nie wypisałeś w konsoli funkcją print (jeśli dobrze pamiętam) ?
  • Odpowiedz