Jak sprawić, by moja postać 2D normalnie stała na zboczu?


13

Mam tę postać w Unity3D (tryb 2D) ... na zboczu, które wygląda tak, wprowadź opis zdjęcia tutaj

Ale chcę, żeby postać stała wzdłuż czerwonej linii ... jak poniżej wprowadź opis zdjęcia tutaj

Jak mogę to zrobić w Unity3d?

Mam tę konfigurację ..

wprowadź opis zdjęcia tutaj

Używam prostego Addforce do ruchu ... Jeśli usunę ograniczenie pozycji Z, spowoduje to dziwne ruchy, takie jak toczenie i tak dalej ... Każda pomoc byłaby mile widziana :)

Odpowiedzi:


27

Czy zastanawiałeś się, czy osoba stojąca prostopadle do zbocza wygląda bardzo dziwnie?

stojący prostopadle do zbocza

Musisz być wyprostowany, aby zachować równowagę.


Niektóre alternatywy:

  • Potraktuj jego stopy jako oddzielny przedmiot i obróć je, aby były równoległe do zbocza. (Raycast znajdzie normalną wartość kąta , jak opisano w dnk . Kąt dla stóp wynosi + 90 ° ).

    obrócone stopy

  • Udawaj, przesuwając całą postać nieco w dół.

    sfałszowane „obrócone” stopy


3
dziękuję wszystkim :) Zrobiłem to po twojej sugestii i.imgur.com/io3v7Y4.png
jamius19

1
To także sugeruje, że gdy tylko obrócone stopy nie będą już ładnie wyglądać, twoja postać powinna się potknąć :)
Hagen von Eitzen

: - / Czy obrót stóp wygląda dziwnie na załączonym obrazku?
jamius19,

@ jamius19 Wyglądają mi dobrze. Myślę, że komentarz Hagena był żartem.
Anko,

1
Nie trzeba przesunąć w dół po prostu przenieść charakter wizualny nachylenia w górę nieco w stosunku do fizycznego
dziwaka zapadkowy

2

Spróbuj użyć RaycastHit.normal na ziemi, aby uzyskać normalne. Ustawiają char.up = normal


1
Po co marnować procesor z raycastem, jeśli fizyka Unity już domyślnie podaje te informacje przy każdym zderzeniu?
Kroltan
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.