Welche Sprache muss man beim Programmieren mit Unity verwenden? Oder ist es eine API für viele Sprachen?
Ich habe die Dokumente gelesen und ich glaube, ich habe den Punkt in der verwendeten Sprache verpasst.
Es heißt, es habe eine iOS-Bereitstellung. Würde dies dem Programmierer dennoch erlauben, in Ziel C zu codieren?
Ist Unity ein SDK, das für viele Plattformen verwendet werden kann, oder wie funktioniert es? Es wird erwähnt, dass derselbe Code auf mehreren Plattformen bereitgestellt wird.
Die gesamte Entwicklung erfolgt mit C #, Boo oder einem JavaScript-Dialekt.
Der größte Teil des Beispielcodes in der Dokumentation ist in JavaScript. Wenn Sie in den offiziellen Foren und im Wiki stöbern, sehen Sie eine ziemlich gleichmäßige Mischung aus C # und Javascript. Sehr wenige Leute scheinen Boo zu benutzen, aber es ist genauso gut; Wählen Sie die Sprache aus, die Sie bereits kennen oder die Sie am glücklichsten lernen.
Unity verwendet Ihren C # / JS / Boo-Code und kompiliert ihn für iOS, Android, PC, Mac, XBox, PS3, Wii oder Web-Plugin. Abhängig von der Plattform, die möglicherweise Ziel C oder etwas anderes ist, ist dies für Sie jedoch völlig transparent. Es hat wirklich keinen Vorteil, Ziel C zu kennen. Sie können nicht darin programmieren.
Update 31.01.2019
Ab Unity 2017.2 hat "UnityScript" (Unitys Version von JavaScript, aber nicht identisch mit) seinen ersten Schritt in Richtung völliger Verachtung unternommen, indem die Option zum Hinzufügen einer "JavaScript" -Datei von der Benutzeroberfläche entfernt wurde. Obwohl JS-Dateien weiterhin verwendet werden könnten, wird die Unterstützung in späteren Versionen vollständig eingestellt.
Dies bedeutet auch, dass Boo unbrauchbar wird, da sein Compiler tatsächlich als Layer auf UnityScript erstellt und somit ebenfalls entfernt wird.
Dies bedeutet, dass in Zukunft nur C # native Unterstützung haben wird.
Unity hat bereits im August 2017 einen vollständigen Artikel über die Ablehnung von UnityScript und Boo veröffentlicht.
quelle
Wenn Sie in Unity für das iPhone erstellen, wird Ihre Mono-Assembly (in C # oder JavaScript geschrieben) im Voraus (AOT) in nativen ARM-Code kompiliert.
Das Authoring-Tool erstellt auch ein Stub-Xcode-Projekt und Verweise, die lib kompiliert haben. Sie können diesem xcode-Projekt objektiven C-Code hinzufügen, wenn Sie native Dinge tun möchten, die in der Unity-Umgebung noch nicht verfügbar sind (z. B. Zugriff auf den Kompass und / oder das Gyroskop).
quelle
Unity3d unterstützt C #, Boo und JavaScript. Das Framework übersetzt dies in sein Zwischenformat und später auf die gewünschte Plattform (IOS / Android / Linux / Windows).
Beachten Sie, dass zuerst C # -Skripte kompiliert werden, gefolgt von JS und Boo. Wenn Sie also möchten, dass ein C # -Skript mit einem JS interagiert, müssen Sie das JS im Ordner "Standard Assets" behalten.
quelle
Unity unterstützt:
1. UnityScript (ist als Javascript bekannt, enthält jedoch mehr Funktionen für die Unity-Spiel-Engine. Ich denke, dies könnte sehr einfach zu erlernen sein.)
2. Boo (keine Erfahrung)
3. C # (Ich bevorzuge dies, da es nützlich ist lerne und du wirst dies auch außerhalb der Einheit nutzen können. Ich denke auch, dass es leicht ist, sich daran zu gewöhnen.
quelle
Einige der Hauptunterschiede zwischen der Syntax von C # - und Javascript-Skripten in Unity.
http://unity3d.com/learn/tutorials/modules/beginner/scripting/c-sharp-vs-javascript-syntax
Aber denken Sie daran, dass C # das beste ist, um sich in Einheit zu entwickeln
quelle
Sie können C #, Javascript, Boo verwenden.
Sofern die Rechenanforderungen für die von Ihnen geschriebene Funktion den Prozessor nicht stark belasten, bietet Javascript in den meisten Fällen eine ausreichende Leistung.
quelle
Es verwendet c # und Unityscript (Javascript), das vom Quellcode in C ++ unterstützt wird, sowie die Unterstützung von C ++ - Plugins (Quellcode und Plugins erfordern Pro).
Die Unity3d-Skriptreferenz ist bei Bedarf sehr einfach zu verstehen / zu verwenden, wahrscheinlich die einfachste unter Motoren wie Cryengine, UDK usw.
Hoffe das hilft.
quelle
Man kann eine der folgenden drei Skriptsprachen verwenden:
Aber meine persönliche Wahl ist C #, weil ich es im Vergleich zu den anderen beiden schneller finde.
quelle
Ich erinnere mich daran, dass ich einige Artikel über die Leistung in Einheit aus dem Internet gelesen habe, in denen Javascript-Benutzer davon abgehalten wurden, sie in Einheit zu verwenden, und zwar über wirklich massive Probleme bei der Verwendung von Javascript in Einheit anstelle von C #. Es heißt, dass C # fast viermal schneller ist als Javascript!
Ich schätze diesen Artikel sehr, der mir den Arsch gerettet hat, als ich mit dem Spielen anfangen wollte. Ich meine nicht, dass Javascript für Unity-Entwickler schlecht ist. Es ist gut, aber mein Rat könnte sein, dass Sie es verwenden sollten, wenn Sie Javascript verwenden für einfache kleine Spiele NICHT FÜR GROSSE PROJEKTE, weil es wirklich ein verdammtes Problem sein kann!
quelle