Werbung

Das Entwickeln von Spielen war noch nie einfacher. Spieleentwicklungsplattformen wie Unity ermöglichen es, alles von einfachen 2D-Plattformspielern bis hin zu detaillierten 3D-Ego-Shootern zu erstellen. Unity ist für kleine Entwickler kostenlos, und es gibt eine Vielzahl von Tutorials, wie Sie den Editor am besten zum Prototypen Ihrer Ideen verwenden können.

Wenn Sie lernen, wie Sie das Unity-Programm verwenden, kommen Sie nur so weit. Der eigentliche Kern Ihres Spiels wird der Code sein, der sein Verhalten bestimmt. Es kann schwierig sein, herauszufinden, welche Sprache für die Spieleentwicklung zu lernen ist - aber im Fall von Unity ist es einfach.

1. Die beste Wahl: C #

Für alle, die mit Unity beginnen oder über Vorkenntnisse in objektorientierter Programmierung verfügen, ist C # die richtige Sprache für Unity. Tatsächlich ist C # die einzige Sprache, die es wert ist, für die Plattform gelernt zu werden, und das aus gutem Grund.

Unity verwendet Mono, eine plattformübergreifende Implementierung des .NET-Frameworks von Microsoft. C # ist die Hauptsprache von .NET, und alle Unity-Bibliotheken werden mit C # -Code erstellt. Zu sagen, dass C # die Sprache der Einheit ist, wäre keine Übertreibung. Unity hat deutlich gemacht, dass C # die einzige Sprache ist, die in Zukunft für die Engine verwendet werden kann.

instagram viewer

Dies sind gute Nachrichten, da C # eine leistungsstarke Sprache ist und leicht zu erlernen ist. Einheit ist nur eine von vielen gute Gründe, C # zu lernen 7 Praktische Gründe zum Erlernen der C # -ProgrammierungEs gibt viele Programmiersprachen. Welche sollten Sie also auswählen, um sie zu lernen? Hier sind einige Gründe, um C # zu lernen. Weiterlesen , und wenn Sie ein Anfänger sind, können Sie es sogar zugänglicher finden. Die Entwicklung von Spielen strukturiert das Lernen und projektbasierte Ziele führen zu einem besseren Verständnis neuer Themen.

Mit der Einführung der C # Jobsystem und ECSUnity treibt die Möglichkeiten von C # immer weiter voran, und der neue Burst-Compiler macht es schneller als je zuvor.

2. Die aktuelle Alternative: JavaScript

Unity unterstützt auch JavaScript - bekannt als UnityScript. Seit der Veröffentlichung steht JavaScript Seite an Seite mit C # als voll funktionsfähiger Unity-Entwicklungssprache. Die Unity-Skriptreferenz enthielt Beispielcode in C # und JavaScript für die meisten Elemente der Bibliothek.

Dies war nützlich für Entwickler mit JavaScript-Hintergrund, da sie trotz unterschiedlicher Struktur des Codes die bekannte Syntax verwenden konnten. Es gab jedoch ein Problem.

UnityScript ähnelt zwar JavaScript, ist es aber nicht. UnityScript verfügt über Klassen, was JavaScript nicht tut. Funktionen von JavaScript wie die Deklaration mehrerer Variablen und optionale Semikolons sind in UnityScript nicht verfügbar.

Vielleicht entscheidend ist, dass die Suche nach JavaScript-Hilfe in Unity-Projekten immer zu Verwirrung geführt hat, da die meisten Leute sie eher als JavaScript als als UnityScript bezeichneten. Die Ergebnisse für Webdesign und Spieleentwicklung verschwammen, und der Unterschied zwischen den Sprachen war ein Streitpunkt für reine JavaScript-Entwickler.

Es ist vielleicht nicht überraschend, dass Unity angekündigt hat, die Unterstützung für UnityScript zurückzuziehen, und es gibt jetzt eine Zeitplan für die Stilllegung. Sie können JavaScript weiterhin mit Unity verwenden, aber wenn Sie wissen, dass es zu Ende geht, warum sollten Sie das tun?

3. Die alte dritte Wahl: Boo

In den frühen Tagen von Unity gab es die Möglichkeit, Boo zu verwenden - eine Python-ähnliche Sprache. Dies ist vielleicht nicht überraschend, da Rodrigo B. De Oliveira, Boos Designerarbeitete für Unity. Die Sprache ist mit .NET und Mono kompatibel und würde vollständig mit der Game Engine implementiert. Was schief gelaufen ist?

Nicht genug Leute haben es benutzt, wahrscheinlich unter der Annahme, dass es nur versucht hat, Python nachzuahmen. Mit der Zeit hat Unity die Unterstützung für Boo eingestellt, und die bevorstehenden Änderungen an UnityScript werden alle alten Boo-Skripte in Unity unbrauchbar machen. Einige sehen dies möglicherweise als verpasste Gelegenheit, da Boo ein großartiger Versuch einer Python-ähnlichen Syntax für die .NET-Programmierung war.

Liebhaber von Python haben jedoch eine andere Option.

4. Die seltsame Wahl: IronPython

Wenn Sie Spiele entwickeln möchten, Python ist wahrscheinlich nicht die Sprache für Sie 4 Gründe, warum Python nicht die Programmiersprache für Sie istDie Programmiersprache Python ist sehr beliebt, aber hier sind einige Gründe, warum Sie Python vermeiden möchten. Weiterlesen , aber es ist möglich. In seinem Microsoft Developer Community-Blog skizziert Charlie Calvert wie man Python von C # aus ausführt- aber es ist nichts für schwache Nerven. Fast zehn Jahre später befindet sich IronPython noch in der aktiven Entwicklung.

Kurz gesagt, Sie müssen das herunterladen IronPython-Bibliotheken von GitHub und verweisen Sie auf sie in Ihrem C # -Projekt. Auf diese Weise können Sie Python-Skripte wie in jeder anderen Bibliothek aus C # -Skripten aufrufen. IronPython ermöglicht auch Aufrufen von .NET-Bibliotheken aus Python. So nützlich dies auch klingt, da Unity auf C # basiert, hilft diese Funktionalität nicht weiter.

IronPython - und IronRuby, das Schwesterprojekt, das C # mit der Programmiersprache Ruby verbindet - sind fantastische Projekte, aber für die Verwendung mit Unity nicht praktisch.

5. Die interessante Wahl: Lua

Eine der besseren Implementierungen einer externen Sprache für Unity ist MoonSharp- Ein Lua-Dolmetscher. Dieses Projekt soll C # nicht als Sprache ersetzen, sondern eher als Brücke fungieren. Der perfekte Anwendungsfall für MoonSharp wäre, den Spielern Ihres Spiels die Möglichkeit zu geben, Spielmods in der Lua-Sprache zu erstellen.

Sie können es auch verwenden, um Objekte und Designebenen getrennt von Ihrem Kernspielcode zu beschreiben.

Wenn Sie bereits in C # codieren und nach einer interessanten Möglichkeit suchen, mit Ihrem Code zu kommunizieren, ist MoonSharp eine Überlegung wert. Da ist es kostenlos verfügbar auf Asset Store von Unitykönnen Sie es direkt in Ihre Projekte importieren.

6. Beste Sprache für Plugins: C / C ++

Trotz der robusten Unity-Bibliothek und aller verfügbaren Tools, die C # bietet, möchten Sie manchmal Ihre eigenen Plugins. Die Hauptgründe, warum sich Benutzer für Plugins entscheiden, sind die Geschwindigkeit oder der Zugriff auf eine Codebasis, die bereits in einer anderen Sprache geschrieben ist. Das Einfügen dieser Skripte in DLL-Plugins spart Remake-Code und kann in einigen Fällen die Leistung verbessern.

In den meisten Fällen wird C ++ die Sprache für die Plugin-Erstellung sein, aber C würde genauso gut funktionieren. Solange der Code in eine DLL integriert ist, kann er im Plugin-Ordner von Unity abgelegt und im Code referenziert werden. Die Wahrscheinlichkeit ist jedoch, dass das Erlernen von C # eine relativ einfache Aufgabe ist, wenn Sie bereits mit dem Codieren in C / C ++ vertraut sind!

7. Neue Sprache für Plugins: Rust

Rust ist eine Sprache mit viel Begeisterung. Erfahrene Programmierer lieben es für die unglaubliche Kontrolle, die es bietet, während sie die Fallstricke vermeiden, in weniger sicheren Sprachen wie C ++ zu schreiben. Rust wurde 2009 von Mozilla entwickelt, um Entwicklern die Möglichkeit zu geben, schnell Hochleistungssoftware zu entwickeln.

Während es nicht möglich ist, Rust direkt in Unity zu schreiben, können Sie über Ihren Unity-Code auf Funktionen und Methoden zugreifen, die in Rust geschrieben wurden. Jim Fleming erklärt ausführlich, wie es geht in seinem Beitrag auf Medium.

Wenn Ihnen dies bekannt vorkommt, können Sie auf diese Weise native Plugins erstellen. Indem Sie die Fähigkeit von Rust nutzen, mit anderen Sprachen zu kommunizieren, können Sie Rust-Funktionen mit Unity direkt aus C # -Code aufrufen DllImport Attribut. Natürlich gibt es mehrere Schritte dazwischen und Lesen von Jims Follow-up-Post zusammen mit einem guten Verständnis von FFIs (Foreign Function Interfaces) wird empfohlen!

Eine einfache Wahl

Die Einstellung von Unity zu jeder Sprache, die nicht C # ist, ist klar, und die ständigen Verbesserungen von Unity beruhen auf dieser Zielstrebigkeit. Kombinieren Sie dies mit der kontinuierlichen Verbesserung von C # als Sprache durch Microsoft, und das Erlernen von C # für die Entwicklung von Unity-Spielen ist ein Kinderspiel. Und seien Sie sicher, auszuchecken Unity Learn für einen einfacheren Weg, um die Spieleentwicklung zu lernen Unity Learn ist der einfachste Weg, um die Spieleentwicklung zu meisternMöchten Sie Ihre eigenen Spiele entwickeln? Unity Learn ist der beste und einfachste Weg, um zu lernen und zu meistern, was Sie wissen müssen. Weiterlesen .

Dies ist jedoch nicht Ihre einzige Option. Unity ist nur eine Engine, und es gibt viele Optionen für Spieleentwicklungssoftware 5 kostenlose Spieleentwicklungssoftware-Tools zum Erstellen eigener SpieleKostenlose Spieleentwicklungssoftware ist eine großartige Möglichkeit, um Videospiele zu erstellen. Wir haben die beste Spielesoftware auf dem Markt zusammengestellt. Weiterlesen wählen von.

Ian Buckley ist freiberuflicher Journalist, Musiker, Performer und Videoproduzent und lebt in Berlin. Wenn er nicht schreibt oder auf der Bühne steht, bastelt er an DIY-Elektronik oder Code in der Hoffnung, ein verrückter Wissenschaftler zu werden.