• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[unity, c#]Problem z rotacją obiektu (prefab'a)

0 głosów
89 wizyt
pytanie zadane 1 sierpnia 2017 w OpenGL, Unity przez SzczerbekGame Bywalec (2,780 p.)

Witam, od paru dni programuje w unity (skrypty w c#) i pojawił mi się problem z rotacją gracza.

Oto mój kawałek kodu:

if (arrowKey == KeyCode.UpArrow) { rote.AllYLast = rote.AllY;  rote.AllY = 0; }
        if (arrowKey == KeyCode.DownArrow) { rote.AllYLast = rote.AllY; rote.AllY = 180; }
        if (arrowKey == KeyCode.LeftArrow) { rote.AllYLast = rote.AllY; rote.AllY = -90; }
        if (arrowKey == KeyCode.RightArrow) { rote.AllYLast = rote.AllY; rote.AllY = 90; }
if (((kc == KeyCode.UpArrow && rote.AllYLast != 0) ||
            (kc == KeyCode.DownArrow && rote.AllYLast != 180) ||
            (kc == KeyCode.LeftArrow && rote.AllYLast != -90) ||
            (kc == KeyCode.RightArrow && rote.AllYLast != 90) ) &&
            kc != KeyCode.Print) 
        {
            transform.rotation = new Quaternion(0, rote.AllY, 0, 0); //<--- To mnie interesuje i nie działa
        }

Ustaliłem, że struktura rote ma dobre wartości. Przy rotacji 0 (Do przodu ('W')) jest wszystko dobrze, przy rotacji 180 (Do tyłu ('S')) też jest wszystko dobrze. Jednak przy rotacji 270 (W lewo ('A')) i 90 (w prawo (''D)) jest coś nie tak. Rotation się nie zmienia, (rote tak).

Film

1 odpowiedź

+1 głos
odpowiedź 1 sierpnia 2017 przez PoetaKodu Stary wyjadacz (11,070 p.)
wybrane 1 sierpnia 2017 przez SzczerbekGame
 
Najlepsza

Domyslnym konstruktorem Quaternionu nie są kąty Eulera (tj. te kąty np. 0 do 360 stopni) tylko jest to konstruktor, który kopiuje inny kwaternion z parametrów (x, y, z, w), które są już gotowym wynikiem po przekształceniu kątów Eulera. Zrób tak:
 

transform.rotation = Quaternion.Euler(katX, katY, katZ);

katX jest oczywiście kątem obrotu na około osi X, katY na około osi Y a katZ na około osi Z.

Podobne pytania

0 głosów
1 odpowiedź 40 wizyt
0 głosów
3 odpowiedzi 309 wizyt
pytanie zadane 26 grudnia 2017 w OpenGL, Unity przez SzczerbekGame Bywalec (2,780 p.)
0 głosów
0 odpowiedzi 26 wizyt
pytanie zadane 14 marca w C# i .NET przez Pankracor Użytkownik (700 p.)
Porady nie od parady
Zadając pytanie postaraj się o odpowiedni tytuł, kategorię oraz tagi.Tagi

65,642 zapytań

112,267 odpowiedzi

236,889 komentarzy

46,640 pasjonatów

Przeglądających: 151
Pasjonatów: 5 Gości: 146

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...