
Gabriel Brooks
0
4092
726
Tworzenie gier nigdy nie było łatwiejsze. Platformy do tworzenia gier, takie jak Unity, umożliwiają tworzenie wszystkiego, od prostych platformówek 2D po w pełni szczegółowe strzelanki FPS. Unity jest darmowy dla małych programistów i istnieje mnóstwo samouczków na temat tego, jak najlepiej używać edytora do prototypowania swoich pomysłów.
Nauczenie się, jak korzystać z programu Unity, do tej pory Cię tylko zaprowadziło. Prawdziwym rdzeniem twojej gry będzie kod, który określa jej zachowanie. Wypracowanie języka do nauki gry może być trudne, ale w przypadku Unity jest to proste.
1. Najlepszy wybór: C #
Dla każdego, kto zaczyna się w Unity lub dla osób posiadających wcześniejszą wiedzę na temat programowania obiektowego, C # jest właściwym językiem do nauki dla Unity. W rzeczywistości C # jest jedynym językiem, którego warto się nauczyć na platformie, i nie bez powodu.
Unity używa Mono, która jest wieloplatformową implementacją platformy Microsoft .NET. C # jest podstawowym językiem .NET, a wszystkie biblioteki Unity są budowane przy użyciu kodu C #. Powiedzenie, że C # jest językiem Jedności, nie byłoby przesadą. Unity wyjaśniło, że uważają C # za jedyny język używany w silniku rozwijającym się.
To dobra wiadomość, ponieważ C # to potężny język i łatwy do nauczenia. Jedność jest tylko jednym z wielu dobrych powodów do nauki programowania C # 7 Praktyczne powody do nauki programowania C # 7 Praktyczne powody do nauki programowania C # Istnieje wiele języków programowania, więc którego wybrać? Oto kilka powodów, dla których warto nauczyć się języka C #. , a jeśli jesteś początkujący, może nawet okazać się bardziej dostępny. Opracowywanie gier nadaje strukturę uczeniu się, a cele oparte na projektach prowadzą do lepszego zrozumienia nowych przedmiotów.
Wraz z wprowadzeniem systemu zadań C # i ECS, Unity pcha to, co można zrobić za pomocą C # coraz dalej, a nowy kompilator Burst sprawia, że jest to szybsze niż kiedykolwiek wcześniej.
2. Obecna alternatywa: JavaScript
Unity obsługuje również JavaScript znany jako UnityScript. Od momentu wydania JavaScript jest używany obok C # jako w pełni funkcjonalny język programowania Unity. Odwołanie do skryptu Unity zawierało przykładowy kod zarówno w języku C #, jak i JavaScript dla większości elementów biblioteki.
Było to przydatne dla programistów pochodzących z JavaScript, ponieważ pomimo różnic w strukturze kodu mogli używać znanej składni. Wystąpił jednak problem.
Podczas gdy UnityScript wydaje się podobny do JavaScript - nie jest. UnityScript ma klasy, czego nie robi JavaScript. Funkcje JavaScript, takie jak deklaracja wielu zmiennych i opcjonalne średniki, nie są dostępne w UnityScript.
Być może najważniejsze jest to, że poszukiwanie pomocy JavaScript w projektach Unity zawsze powodowało zamieszanie, ponieważ większość ludzi nazywała to JavaScript, a nie UnityScript. Rozmyte wyniki zarówno w zakresie projektowania stron internetowych, jak i tworzenia gier, a różnica między językami była sporna dla twórców czystego JavaScript.
Być może nic dziwnego, że Unity ogłosiło, że zamierza wycofać wsparcie dla UnityScript, a teraz istnieje harmonogram, aby go wycofać. Nadal możesz używać JavaScript w Unity, ale wiedząc, że to się skończy, dlaczego miałbyś to robić?
3. Stary trzeci wybór: Boo
We wczesnych dniach Unity istniała opcja używania języka Boo-podobnego do języka Python. Nie jest to chyba zaskakujące, ponieważ Rodrigo B. De Oliveira, projektant Boo, pracował dla Unity. Język jest kompatybilny z .NET i Mono i zostałby w pełni zaimplementowany z silnikiem gry. Co poszło nie tak?
Niewystarczająca liczba osób z niego korzystała, prawdopodobnie zakładając, że próbowała jedynie naśladować Pythona. Z czasem Unity porzuciło obsługę Boo, a nadchodzące zmiany w UnityScript sprawią, że wszystkie stare skrypty Boo będą bezużyteczne w Unity. Niektórzy mogą postrzegać to jako straconą okazję, ponieważ Boo była świetną próbą użycia składni podobnej do Pythona do programowania .NET.
Jednak miłośnicy Pythona mają inną opcję.
4. The Odd Choice: IronPython
Jeśli chcesz tworzyć gry, Python prawdopodobnie nie jest dla Ciebie językiem 4 Powody, dla których Python nie jest dla Ciebie językiem programowania 4 Powody, dla których Python nie jest dla Ciebie językiem programowania Język programowania Python jest niezwykle popularny, ale oto kilka powodów, dla których możesz chcieć uniknąć Pythona. , ale jest to możliwe. Na swoim blogu Microsoft Developer Community blog Charlie Calvert opisuje, jak uruchomić Python z C # - ale nie jest to dla osób o słabych nerwach. Prawie dziesięć lat później IronPython jest nadal w fazie aktywnego rozwoju.
Krótko mówiąc, musisz pobrać biblioteki IronPython z GitHub i odwołać się do nich w swoim projekcie C #. Umożliwi to wywoływanie skryptów w języku Python ze skryptów w języku C # podobnie jak w przypadku innych bibliotek. IronPython umożliwia także wywoływanie bibliotek .NET z Pythona. Choć brzmi to tak przydatne, ponieważ Unity opiera się na języku C #, ta funkcja nie pomaga.
IronPython i IronRuby, to siostrzany projekt łączący C # z językiem programowania Ruby - to fantastyczne projekty, ale nie są praktyczne do użycia z Unity.
5. Ciekawy wybór: Lua
Jedną z lepszych implementacji zewnętrznego języka dla Unity jest MoonSharp-a Lua interpreter. Ten projekt nie jest przeznaczony do zastąpienia C # jako języka, bardziej działa jako pomost. Idealnym przykładem użycia dla MoonSharp byłoby dodanie sposobu, w jaki gracze będą mogli tworzyć mody w języku Lua.
Możesz go również użyć do opisu obiektów i poziomów projektowania niezależnie od podstawowego kodu gry.
Jeśli już piszesz w C # i szukasz interesującego sposobu na połączenie z twoim kodem, warto rozważyć MoonSharp. Ponieważ jest dostępny za darmo w sklepie Unity's Asset, możesz go zaimportować bezpośrednio do swoich projektów.
6. Najlepszy język dla wtyczek: C / C++
Pomimo solidnej biblioteki Unity i wszystkich dostępnych narzędzi C #, czasami możesz chcieć własnych wtyczek. Główne powody, dla których ludzie wybierają wtyczki, to szybkość lub dostęp do bazy kodów już napisanej w innym języku. Wbudowanie tych skryptów we wtyczki DLL oszczędza przerobiony kod i może poprawić wydajność w niektórych przypadkach.
W większości przypadków C ++ będzie językiem używanym do tworzenia wtyczek, ale C będzie działał równie dobrze. Tak długo, jak kod jest wbudowany w bibliotekę DLL, można go umieścić w folderze wtyczek Unity i odwoływać się do niego w kodzie. Prawdopodobieństwo, że jeśli już znasz kodowanie w C / C ++, to nauka języka C # byłaby stosunkowo prostym zadaniem!
7. Nowy język wtyczek: Rust
Rust jest językiem z dużą ilością szumu wokół niego. Doświadczeni programiści uwielbiają to za niesamowitą kontrolę, jaką daje, unikając pułapek pisania w mniej bezpiecznych językach, takich jak C ++. Rust został stworzony przez Mozillę w 2009 roku, jako sposób na szybkie opracowanie przez programistów wydajnego oprogramowania.
Chociaż nie jest możliwe bezpośrednie pisanie Rust w Unity, możesz uzyskać dostęp do funkcji i metod napisanych w Rust z kodu Unity. Jim Fleming opisuje, jak to zrobić szczegółowo w swoim poście na Medium.
Jeśli wydaje się to znajome, to dlatego, że jest to inny sposób tworzenia wtyczek natywnych. Wykorzystując zdolność Rust do komunikowania się z innymi językami, możesz wywoływać funkcje Rust bezpośrednio z kodu C # za pomocą Unity's DllImport atrybut. Oczywiście pomiędzy nimi jest kilka kroków i zaleca się przeczytanie posta Jima wraz z dobrym zrozumieniem FFI (interfejsów funkcji zagranicznych)!
Prosty wybór
Stosunek Unity do każdego języka, który nie jest C #, jest jasny, a ciągłe ulepszenia Unity opierają się na tym jednomyślności. Połącz to z ciągłym ulepszaniem przez Microsoft języka C # jako języka, a nauka języka C # do tworzenia gier Unity nie stanowi problemu.
To nie jest twoja jedyna opcja, Unity to tylko jeden silnik i istnieje wiele opcji oprogramowania do tworzenia gier 5 bezpłatnych narzędzi do tworzenia gier do tworzenia własnych gier 5 bezpłatnych narzędzi do tworzenia gier do tworzenia własnych gier Darmowe oprogramowanie do tworzenia gier to świetny sposób na rozpoczęcie tworzenia gier wideo. Zebraliśmy najlepsze oprogramowanie do gier na rynku. do wybrania z.