Tutorial Unity3d, czyli tworzymy własną grę FPS od podstaw z wykorzystaniem silnika Unity.
Temat: Jak stworzyć i dostosować system sterowania postacią
Spis treści
Jeżeli nie używałeś do tej pory Unity3d:
FPS Tutorial:
#1 – Tworzenie nowego projektu i narzędzie terenu
#2 – Sterowanie postacią
#3 – Życie, pancerz i wytrzymałość postaci
#4 – Regeneracja życia i energii. Efekty trafienia.
#5 – Kamera z bronią i strzelanie
#6 – Przeładowanie broni i amunicja
#9 – Rzut granatem i seria z karabinu
#10 – Celowanie i dziury po kulach
#11 – Przeciwnik z prostym AI, sztuczna inteligencja
#12 – Animacja postaci przeciwnika. Animator
#14 – Ostatnie szlify i budujemy projekt
Teoria
Dzięki wbudowanym package’om w Unity3d, stworzenie samej postaci jest bardzo proste. Ogólnie wychodzę z założenia, że w informatyce nie ma co wymyślać koła na nowo. Więc jeśli mamy gotową część systemu, która jest sprawdzona i w pełni funkcjonalna, nie ma sensu pisać wszystkiego od zera tracąc swój czas. Dlatego w tym tutorialu, stworzenie postaci, odbędzie się z wykorzystaniem gotowego modelu, a my skupimy się na jego konfiguracji. Więc ta część tutoriala będzie prosta i przyjemna.
Oczywiście, można powiedzieć, że pisząc wszystko od zera więcej się nauczymy. Możliwe, jednak funkcje, których byśmy do tego użyli i tak prędzej czy później do nas trafią. A napisanie, dobrego skryptu sterowania postacią to trudne zajęcie. Więc uważam, że lepiej nauczyć się używać tego co dali nam twórcy silnika.
Do dzieła!
Uwaga!
Jeśli używasz Unity3d 5.0 możesz zjechać na dół strony, gdzie omawiam Controller dla tej wersji Unity.
Stworzenie nowej postaci gracza
Opisałem to bardzo szybko w poprzedniej części, aby wykorzystać postać do testów. Jednak, z racji że jest to część kursu dla tego zagadnienia, powtórzę ten krok jeszcze raz. Jeśli masz już na scenie postać, którą możesz się poruszać, możesz pominąć ten krok.
Do sterowania w grze, twórcy Unity dostarczyli nam dwa kontrolery Third Person Controller i First Person Controller. Jak łatwo się domyślić, różnią się orientacją kamery, która przypada odpowiednio z 3 lub 1 osoby. Od wprowadzenia wsparcia dla gier 2D, dostępna jest również paczka z Controllerami na urządzenia mobilne.
Aby móc skorzystać z tych kontrolerów, musimy mieć zaimportowaną standardową paczkę Unity: Character Controller. Jeśli podążałeś dokładnie za tutorialem, to powinieneś mieć ją zaimportowaną przy tworzeniu projektu. W panelu Project odnajdź folder Standard Assets, a w nim folder Character Controller. Jeśli nie posiadasz tych folderów, to znaczy że paczka nie została zaimportowana.
Jeżeli nie masz jej zaimportowanej zrób to teraz wybierając z górnego menu: [Assets -> Import Package… -> Character Controller].
Zostało tylko dodać obiekt gracza. Z folderu Standard Assets -> Character Controllers w panelu Project, wybierz obiekt First Person Controller i przenieść go na panel scene, dodając go tym samym do gry.
First Person Controller, posiada swoją kamerę, która jest główną kamerą gry. W danej scenie, może być tylko jedna taka kamera. Dlatego sprawdź teraz panel Hierarchy, aby sprawdzić, czy po za kamerą Controllera nie ma innych kamer. Jeśli jakieś znajdziesz, po prostu je usuń.
Dostosowanie ustawień
Na obiekt gracza składają się dwa elementy: Kamera oraz obiekt kapsuły. Jeżeli postać gracza nie jest nigdy przez niego widziana, stosuje się taki zabieg, aby zredukować obliczenia wykonywane przez komputer przy renderingu, oraz zmniejszyć ilość pracy wykonywanej przez grafików. Kapsuła dobrze odzwierciedla wymiary gracza i nie potrzebujemy tutaj jego dokładnego modelu.
Tyle jeśli chodzi o obiekty. Jednak obiekt gracza, jako całości, posiada jeszcze 4 istotne komponenty:
- Character Controller
- Mouse Look (Script)
- Character Motor (Script)
- FPSInput Controller (Script)
Ostatni pomijamy, ponieważ nie ma on parametrów do dostosowania. A każdy z pozostałych omówimy.
Character Controller:
Standardowy kontroler postaci, opisujący ją paroma parametrami i umożliwiający poruszanie się, jeśli obiekt postaci nie korzysta z fizyki
- Slope Limit – Kąt jaki może pokonać nasza postać. Domyślnie jest to 45 stopni. Jednak, jeśli tworzymy np. schody spiralne, nie jesteśmy w stanie załatwić sprawy za pomocą ściętego box collidera, a musimy się posłużyć mesh colliderem, wtedy jedyny sposób sprawienia, żeby nasza postać pokonała stopnie, to ustawienie kąta na 90 stopni.
- Step Offset – Wysokość stopnia. Można to sobie (bardzo słusznie) porównać ze schodami. Oznacza to, jak wysoki może być stopień, aby postać normalnie na niego weszła.
- Skin Width – Oznacza jak bardzo nasz collider może wejść w inny. Ustawienie tego parametru na za niski, może sprawić że nasza postać utknie. Dokumentacja zaleca trzymanie tego parametru na poziomie 10% promienia (o nim później)
- Min Move Distance – Jeżeli nasza postać próbuje pokonać dystans mniejszy od wskazanego przez ten parametr, nie porusza się w ogóle.
- Center – Określa gdzie znajduje się collider dla naszej postaci.
- Radius – Jest to promień naszego collidera, czyli szerokość postaci.
- Height – Oczywisty parametr, wysokość naszej postaci.
Mouse Look
- Axes – Określenie osi. W przypadku ustawienia parametru MouseX albo: MouseXandY, możemy w pełni manipulować kamerą. Dla ustawienia Mouse Y, kamerą możemy poruszać tylko w pionie.
- Sensitivity X / Sensitivity Y – Czułość myszki dla odpowiednich osi.
- Minimum X / Maximum X – Jak bardzo możemy się obracać w osi oX. Zakres -360 do 360 sprawia, że ograniczeń nie ma.
- Minimum Y / Maximum Y – Jak bardzo możemy się obracać w osi oY. Domyślnie system przyjmuje wartości -60 do 60, sprawia to, że nie możemy nienaturalnie obracać się w osi oY, co w normalnym życiu sprowadzałoby się do robienia przewrotów.
Character Motor
- Can Control – Czy skrypt ma reagować na urządzenia wejścia.
- Use Fixed Update – ?
Movement
- Max Forward/Backwards/Sideways Speed – Oczywisty parametr, czyli nasza maksymalna prędkość do przodu, do tyłu i na boki.
- Slope Speed Multiplier Curve – Wykres reprezentujący zmianę prędkości w czasie, dla ześlizgiwania się z powierzchni. W przypadku na rysunku jest to szybki spadek, ze stopniowym hamowaniem w końcówce.
- Max Ground/Air Acceleration – Z jaką maksymalną prędkością możemy przyspieszać, odpowiednio dla poruszania się po ziemi oraz w powietrzu.
- Gravity – Siła przyciągania ziemskiego. Z racji, że postać nie posiada Rigidbody, nie reaguje na grawitację w świecie gry, stąd ten parametr do jej symulacji.
- Max Fall Speed – Czyli z jaką maksymalną prędkością możemy spadać.
Jumping
- Enabled – Czy nasza postać w ogóle może skakać.
- Base Height – Jak wysoko możemy wyskoczyć.
- Extra Height – Daje to efekt przedłużenia skoku. Jedno klepnięcie w klawisz skoku, spowoduje osiągnięcie Base Height, jeśli klawisz przytrzymamy, osiągniemy wysokość równą Extra Height.
- Perp Amount – Jest to reakcja na wywołanie skoku, gdy postać znajduje na się na powierzchni, po której może chodzić, jednak nie jest ona idealnie prosta. Jeśli parametr jest równy 0, skok zawsze będzie po osi oY w górę, czyli całkowicie w pionie. Im większy parametr, tym bliżej będzie nam do skoku prostopadle do powierzchni, na której się znajdujemy. Maksymalna wartość to 1.
- Steep Perp Amount – Bardzo zbliżony do poprzedniego parametru, jednak dotyczy sytuacji gdy znajdujemy się na powierzchni po której nie możemy się poruszać. Np. gdy ześlizgujemy się ze zbyt stromego zbocza. Tutaj również parametr przyjmuje wartości od 0 do 1.
Moving Platform
- Enabled – Czy przebywanie postaci na poruszających się platformach, ma na nią wpływać.
- Movement Transform – Mamy tutaj aż 4 wartości:
- None – Prędkość platformy nie ma wpływu na wyskok
- InitTransfer – Wyskok otrzymuje prędkość początkową z platformy, po czym stopniowo ta prędkość maleje
- PermaTransfer – Wyskok otrzymuje prędkość początkową z platformy i utrzymuje ją aż do lądowania
- PermaLocked – Wyskok jest względny do ruchu ostatnio dotkniętej platformy i będzie poruszał się razem z nią
Ogólnie ten parametr jest dość nietypowy i jego faktyczne zastosowanie, wymaga przetestowania, która opcja jest dla nas najlepsza. Jego jedynego nie testowałem w praktyce, dlatego opis jest tak bardzo ogólnikowy i niedokładny.
Sliding
- Enabled – Czy dopuszczamy ześlizgiwanie się postaci ze stromych powierzchni.
- Sliding Speed – Oczywiste, bazowa prędkość ześlizgiwania się.
- Sideways Controll – Na ile jesteśmy w stanie kontrolować ruch postaci na boki, w czasie ześlizgiwania się. Parametr przyjmuje wartości od 0 do 1. I przedstawia się to mniej więcej, jako procent wartości sliding speed. Czyli jeśli tutaj ustawimy 0.5 a sliding speed na 10, to postać może poruszać się na boki z prędkością równą 5.
- Speed Controll – Ten parametr określa jak bardzo możemy wpłynąć na prędkość ześlizgiwania się. Znów przyjmuje wartości od 0 do 1 i określa procentowy wpływ na sliding speed. Tzn. jeśli tu ustawimy wartość na 0.5 to możemy wpłynąć na sliding speed tak, że postać może poruszać się z wartością 150% lub 50% sliding speed. Więc jeśli sliding speed jest znów ustawione na 10, a tutaj mamy 0.5, to gracz może zredukować prędkość ześlizgiwania się do 5 lub zwiększyć do 15.
Unity3d 5.0
Jeżeli chodzi o Unity 5.0, również dysponujemy fajnym kontrolerem postaci z pierwszej osoby. Można też śmiało powiedzieć, że jest on lepszy i bardziej dopracowany od tego poprzedniego. Dlatego dodajemy obiekt o nazwie FPSController z folderu: Standard Assets / Characters / First Person Character / Prefabs. Drugi dostępny kontroler opiera się na Rigidbody, czyli steruje w nim zasadzie fizyka. My wykorzystamy sobie ten niefizyczny. Z czego się składa nasz kontroler?
Character Controller:
Standardowy kontroler postaci, opisujący ją paroma parametrami i umożliwiający poruszanie się, jeśli obiekt postaci nie korzysta z fizyki.
- Slope Limit – Kąt jaki może pokonać nasza postać. Domyślnie jest to 45 stopni. Jednak, jeśli tworzymy np. schody spiralne, nie jesteśmy w stanie załatwić sprawy za pomocą ściętego box collidera, a musimy się posłużyć mesh colliderem, wtedy jedyny sposób sprawienia, żeby nasza postać pokonała stopnie, to ustawienie kąta na 90 stopni.
- Step Offset – Wysokość stopnia. Można to sobie (bardzo słusznie) porównać ze schodami. Oznacza to, jak wysoki może być stopień, aby postać normalnie na niego weszła.
- Skin Width – Oznacza jak bardzo nasz collider może wejść w inny. Ustawienie tego parametru na za niski, może sprawić że nasza postać utknie. Dokumentacja zaleca trzymanie tego parametru na poziomie 10% promienia (o nim później)
- Min Move Distance – Jeżeli nasza postać próbuje pokonać dystans mniejszy od wskazanego przez ten parametr, nie porusza się w ogóle.
- Center – Określa gdzie znajduje się collider dla naszej postaci.
- Radius – Jest to promień naszego collidera, czyli szerokość postaci.
- Height – Oczywisty parametr, wysokość naszej postaci.
First Person Controller
Czyli skrypt, odpowiedzialny za możliwość poruszania naszej postaci.
- IsWalking – Parametr na który nie mamy wpływu. Jeżeli zaznaczony to postać chodzi, jeśli nie, to biega. Co zmienia tylko prędkość poruszania postaci.
- Walk Speed – Prędkość poruszania się postaci, gdy chodzi.
- Run Speed – Prędkość poruszania się postaci, gdy biega.
- Runstep Lenghten – Odległość kroku w biegu. Mówiąc kolokwialnie, będzie to szybkość z jaką nasza postać przebiera nóżkami. Żeby zrozumieć działanie tego parametru, najlepiej uruchom sobie grę, ustaw parametr na 0, przebiegnij się kawałek, potem ustaw parametr na 1 i przebiegnij się znów, nasłuchując dźwięków kroku.
- Jump Speed – Kolejny prosty parametr, czyli wysokość i szybkość wybicia w powietrze naszej postaci
- Stick To Ground Force – Odwrotne do poprzedniego, czyli z jaką szybkością nasza postać będzie opadać.
- Gravity Multipler – Czyli mnożnik grawitacji. Im większy, tym szybciej nasz przyssie do ziemi.
- Mouse Look – Czyli sterowanie (obracanie się) za pomocą myszy. Po rozwinięciu ma kilka swoich parametrów:
- X Sensitivity – Czułość na osi X
- Y Sensitivity – Czułość na osi Y
- Clamp Vertival Rotation – Blokada obrotu w pionie. Jeśli wyłączyć ten parametr, to możemy obrócić naszą postać o 360 stopni w dół/górę
- Minimum X i Maximum X – Dwa parametry, które określają w jakiej granicy ma się odbywać blokada
- Smooth – Obrót odbywa się z wygładzeniem, czyli takim lekkim opóźnieniem obrotu, względem ruchu myszy.
- Smooth Time – Oczywiście parametr decydujący ile wygładzanie ma trwać.
- Use Fov Kick – Zmienia nieco pole widzenia naszej kamery gdy zaczynamy biegać, aby nadać iluzję zwiększenia prędkości.
- Camera – Kamera, na której ma się to odbyć, wypełnia się automatycznie
- FOV Increase – Zmiana pola widzenia (Field Of View)
- Time to Increase – Czas w jakim ma się zwiększyć pole widzenia
- Time to Decrease – Czas w jakim ma się zmniejszyć pole widzenia
- Increase Curve – Czyli krzywa, pokazująca jak ma się odbywać zmiana pola widzenia
- Use Head Bob – Jest to efekt gibania się głowy na boki w trakcie chodzenia
- Horizontal/Vertical Bob Range – Czyli jak bardzo może się gibać nasza głowa w poziomie i pionie.
- Bobcurve – Znów krzywa, pokazująca jak wartość ma się zmieniać.
- Vertical To Horizontal – Szybkość przejścia między gibinięciem pionowym i poziomym. Za duża wartość sprawi, że postać dostanie padaczki.
- Jumb Bob – Gibnięcie głową w dół i górę gdy postać ląduje po skoku
- Bob Duration – Czas trwania gibnięcia.
- Bob Amount – Zasięg gibnięcia.
- Step Interval – Odległość między odegraniem dwóch dźwięków kroku.
- Footsteps Sound – Tablica z dźwiękami kroków, które mogą być odtworzone
- Jump Sound – Dźwięk skoku
- Land Sound – Dźwięk lądowania
Jak mówiłem, ten skrypt jest bardzo rozbudowany, ale zapewnia nam prawie wszystko, czego moglibyśmy oczekiwać. Do tego nasza postać ma komponent AudioSource, który pozwala słyszeć dźwięki, oraz Rigidbody, czyli fizykę. Jednak przy istnieniu komponentu Character Controller, nie jestem pewny, czemu ten komponent dodano, bo wydaje się zbędny.
No rusz się!
Póki co, nie musimy zmieniać tych parametrów dla naszej postaci i możemy zostawić je na ustawieniach domyślnych. Są wystarczające dla naszych potrzeb. Teraz, aby przetestować działanie kontrolera, uruchom grę za pomocą przycisku play i pochodź sobie po świecie. Jak się pewnie domyślasz posłuży Ci do tego kombinacja WSAD lub strzałki i spacja do skoku.
Jest to dobry moment, żeby przetestować różne ustawienia wyżej omawianych parametrów i zobaczenia jak wpływają na grę w praktyce.
Poprzednia część <- #1 – Tworzymy teren
Następna część -> #3 – Życie, pancerz i wytrzymałość postaci
Mógłbyś zrobić poradnik jak zrobić sterowanie do platformy android. Dodanie i ustawienie sterowania tymi wirtualnymi joystickami na ekranie, bo nie ogarniam tego, a byłoby bardzo pomocne. Byłbym wdzięczny ;). Pozdrawiam.
https://mwin.pl/zaproponuj-tutorial/
Pod tym linkiem można proponować tutoriale. Temat z pewnością poruszę, tylko nie mogę obiecać kiedy.
nie mogę wgrać mouse look. pisze cant add script begaviour MouseLook. The script need to derive from monobehavior !
Przy dodawaniu kompletnego obiektu, problem nie powinien występować, bo wszystkie komponenty (w tym skrypty) powinny być już dodane. Jeśli dodajesz jakiś zewnętrzny skrypt MouseLook, to musiałbym go zobaczyć, żeby coś doradzić.
zawsze kiedy chce przetestować jak to wygląda w praktyce to sie spawnuje gdzieś poza mapą. jak to ustawić żeby sie spawnować w danym miejscu?
Po uruchomieniu gry, kamera znajduje się tam gdzie postać gracza, którą ustawiłeś. Musisz ją przenieść na wybrane miejsce.
Druga opcja jest taka, że zostawiłeś na scenie domyślną kamerę (obiekt Main Camera) i zamiast widzieć z perspektywy postaci, widzisz z perspektywy tej kamery.
Pomocy mam takie błędy i nie wiem co one oznaczają:
“Timed out connecting pipe to external process: C:/Program Files/Unity/Editor/Data/Tools/JobProcess.exe
Potem jest:
“Failed executing external process for “Clustering” job.”
Potem mam:
“Failed executing external process for “Visibility” process.”
A w jakim momencie pojawiają Ci się te błędy?
Regularnie co kilka minut.
Jeżeli przeinstalowanie Unity, zainstalowanie starszej wersji czy aktualizacja sterowników (względnie powrócenie do starszej wersji) nie pomaga, mogę jedynie zalecić konsultację z Supportem Unity.
Proszę o pomoc, gdy chce uruchomić grę, pojawiam sie w powietrzu, nie mogę sie ruszać i pojawia sie komunikat ,,NullReferenceException: Object reference not set to an instance of an object
UnityStandardAssets.Characters.FirstPerson.FirstPersonController.RotateView () (at Assets/Standard Assets/Characters/FirstPersonCharacter/Scripts/FirstPersonController.cs:237)”.
FirstPersonController jest skryptem domyślnym postaci. Jeśli w nim nie grzebałeś nie ma możliwości, żeby pojawił się błąd tego typu. Chyba, że w Unity v5 korzystasz z assetów dla Unity v4 albo odwrotnie.
Mam problem kiedy chcę postawić FirstPersonController po prostu nie mogę tego postawić
Możesz jakoś konkretniej opisać swój problem?
Mam problem, bo chodzić chodzi ale nie skacze, dlaczego??
A wykorzystałeś model ze standardowych assetów czy jakiś inny?
No właśnie tak i dlatego się dziwię
ja korzystam z unity 5.0 i po dodaniu obiektu i odpalenia gry lecę do góry dlaczego?
Nie wiem co dokładnie wypisujesz w konsoli, ale zakładam, że to parametr grawitacji, który u Ciebie ustawiony jest na wartość ujemną. Przez co góra jest na dole, a dół u góry.
W Edit -> Project Settings -> Physics możesz sobie zmienić ten parametr.
Ewentualnie jeśli gdzieś w kodzie zmieniałeś kierunek grwitacji, np. tak:
Physics.gravity = new Vector3(0, -1.0F, 0);
To ten fragment jest temu winny.
to zdjęcie
hmmm a jaka powinna być ta wartość
bo tak była ujemna na -9.80 usunołem minus i ciągle nie działa
a powinienem dodać FPSConroller tak?
Tak
dodałem ten obiekt i ciągle lęcę w górę
Jedna sprawa, to mój błąd, grawitacja faktycznie powinna mieć wartość ujemną. Ale ogólnie nie widzę powodów dla których tak by się miało dziać.
Spróbuj stworzyć nowy projekt i dodać tam tylko teren i FPSController.
Co mam zrobić w unity 5.4 jeśli buguje mi się tekstura terenu? Przed nałożeniem jest cały szarogranatowy i nie widać żadnych zmian trzeba go robić na oślep a jak nałożę teksturę trawy to robi się z niego jednolita czarna masa.
Możesz wysłać screen Twojego problemu, bo nie umiem sobie tego nawet wyobrazić. :P
Mogę przesłać zdjęcie tylko muszę włączyć kompa
Koło 16 spróbuję wrzucić screena
Witam. Dopiero pierwszy raz zainstalowałem Unity i zaczynam zabawę. Zastanawia mnie tylko dlaczego pewnych opcji wymienionych tutaj, jak kontrolerze postaci nie mam. Jak na przykład:
Extra Height, Slope Speed Multiplier Curve, Max Ground/Air Acceleration itp.
Czy w nowej wersji te opcje zostały wycofane?
Dziękuję
Chciałem zrobić prosty skrypt wyrównujący tor ruchu pojazdu(np jeżeli rotacje pojazdu wynoszą 110, to niech z czasem wyrówna się do 90).
Tak wygląda przykładowy if
if(transform.rotation.z % 90 > 45)
{
transform.Rotate(0, 0, -0.5f * Time.deltaTime);
}
problem pojawił się w tym że transform.rotation.z zwraca wartość od -1 do 1 i nie umiem stwierdzić jakie zasady tym żądzą bo 90’~0.7, 60′ = 0.5, 180′ = 1
Jak to działa?
Nieco dziwny błąd, bo transform.rotation.oś powinno zwrócić wartość która wyświetla Ci się w oknie inspektor w komponencie transform.
Gdzie trzeba szukać błędu?
Lub jak jeszcze można rozwiązać problem krzywo jeżdżących pojazdów?
Mogę podpowiedzieć jakieś rozwiązanie jak podrzucisz screen gry, żebym miał kontekst tego, jak to się powinno odbywać. :)
przypadkiem odkryłem że te losowe liczby to pierwiastki ułamków
ale wciąż nie umiem znaleźć zasady
90′ = 0.5 , 60′ = 0.25, 120′ = 0.75
niektóre wrtości zgadzają się z sinusem, niektóre
już mam – to sinus danego kąta dzielony przez 2
Dobra, teraz jak to mogę wykorzystać, albo jakoś zamienić to na normalne kąty
Witam.
Mam pytanie, gdzie mogę zmienić ustawienie które odpowiada za to, że jak podczas skoku wcisnę spację to od razu po wylądowaniu następuje następny skok?
Dziękuję i pozdrawiam.
Witam.
Chciałbym pozbyć się niechcianego efektu, podczas bycia w powietrzu gdy kliknę spację to po wylądowaniu odbędzie się skok. Chciałbym usunąć takie “kolejkowanie” się skoków.
Pozdrawiam.
Witam,
wykorzystujesz swój skrypt czy domyślny Controller?
Domyślny Controller, ale trochę go po modyfikowałem:
if (!m_PreviouslyGrounded && m_CharacterController.isGrounded) {
StartCoroutine(m_JumpBob.DoBobCycle());
PlayLandingSound();
m_MoveDir.y = 0f;
m_Jumping = false;
m_Jump = false;
}
Tutaj dodałem wpis m_Jump=false: i przestało występować to o czym wspominałem, ale od tego czasami występują problemy z utratą staminy przy skokach który napisałem ale to możliwe że gdzieś indziej jest błąd.
Jaka jest komenda na sprawdzenie rodzica? plz pomóż. Bo mam ekwipunek, i chciałbym zrobić że jeśli rodzicem image’a “siekiera” jest image “Bron” to żeby coś się stało;
GameObject p = twojObiekt.transform.parent.gameObject
I teraz pod p masz obiekt rodzica.
Ostanie pytanie. Bo żeby działało muszę to umieścić w funkcji start (poza nie działa). A potem w innych nie mogę go użyć.
Zadeklaruj zmienną wewnątrz klasy, a w funkcji start tylko przypisz wartość, wtedy zmienna będzie dostępna w obrębie całej klasy.
A jak zrobić aby za pomocą innego skryptu zmienić czułość myszy?
W skrypcie odpowiedzialnym za obracanie myszy trzeba po prostu przemnożyć ruch myszy przez jakąś stałą.
Mało z tego rozumiem ale coś pokombinuję dzięki za odpowiedź
Dzień dobry. Moje 2 błędy – gdy spawnuje postac z grawitacja to owszem spada, dociera do tekstury i tam mocno zwalnia i lekko się zapada. gdy wyłączę szybkość opadania (ustawię na 0) to moja postać normalnie na teksturze stoi. Druga rzecz że nie mogę ruszać myszą :/ assety standart unity 5.0
Ogólnie rzecz biorąc, nie działają Ci domyślne assety Unity?
xd
jak wciskam Assets -> Import Package nie ma Character Controller
Bo tutorial był tworzony pod Unity 4.0, a obecnie mamy już w sumie 2018.1 więc sporo rzeczy się zmieniło ;)
Witam. Działam na Unity < 5.0 i chcę napisać skrypt do poruszania się postacią. Gra jest typu GTA 2, a za cholerę nie wiem jak się do tego zabrać. Uczyłem się programować w c++ i wiem, że c# jest podobne to nie ukrywam, że w Unity jestem praktycznie nowy (1 projekt 2d skończony ale taki mały typu Mario) i te wszystkie zmienne, public, czy pobieranie fizyki ridigboby mnie troszkę przerasta, a nie chce porzucać projektu a nigdzie nie mogę znaleźć choć przykładu żeby zrozumieć troche jak to działa i jakie komendy są do czego, nie chce gotowego kodu, tylko chce się nauczyć ale nie wiem już gdzie szukać. I tu nasuwa mi się pytanie czy mógł by Pan poświęcić trochę swojego czasu i przygotować jakiś poradnik na gotowym skrypcie i opisać pokrótce jego elementy ? Albo coś podobnego. Jeśli nie chce Pan albo gdzieś już jest taki to bardzo przepraszam za to, że zawracam głowę i poszukam gdzie indziej, bo nie mam zamiaru się poddać.
Dziękuje
Polecam porobić parę kursów które pokazują różne rzeczy niekoniecznie to co Ci teraz potrzebne. Dzięki temu powinieneś załapać jak to mniej więcej działa.
Staram się w ramach poradników omawiać niektóre klasy Unity, ale póki co opisałem tylko dwie.
Very nice post. I just stumbled upon your blog and wanted to say that I’ve really enjoyed browsing your blog posts. In any case I’ll be subscribing to your feed and I hope you write again soon!
Howdy very cool site!! Man .. Excellent .. Wonderful .. I’ll bookmark your web site and take the feeds also¡KI am glad to search out numerous useful info here within the post, we want work out extra strategies on this regard, thanks for sharing. . . . . .
Monitor Closely 2 indomethacin decreases effects of pindolol by pharmacodynamic antagonism priligy online pharmacy Lancet 351 316 322