Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

theJamSP

Frischling

  • »theJamSP« ist der Autor dieses Themas

Beiträge: 10

Beruf: Schüler

  • Private Nachricht senden

1

17.04.2014, 19:20

C# oder Javascript für Unity?

Hey Leute, ich habe neulich den ersten Kontakt mir Programmierung und Spieleprogrammierung gehabt. Ich bin eigentlich ein ziemlicher Neuling des Programmierens und kann nur Bruchstücke HTML (jajaja ich weisß, dass HTML keine Programmiersprache ist, sondern nur "geschrieben" wird), und bin mal auf Unity gestoßen. Ich habe vor, kleine 2D Spiele für PC zu programmieren. Für Unity kann man ja c# und JavaScript benutzen, und ich habe in beiden nur reingeschnuppert. Z. B. weiß ich, dass man bei JavaScript für variablen nur var benutzen kann, aber bei C# es verschiedene Datentypen gibt wie int . Nun, was könnt ihr für meine Wenigkeit empfehlen? Für mich ist es halt wichtig, dass die Sprache, die ich benutzen werde, optimal ist, da ist mir auch der Schwierigkeitsgrad egal.

LG Jonas

MitgliedXYZ

Alter Hase

Beiträge: 1 369

Wohnort: Bayern

  • Private Nachricht senden

2

17.04.2014, 19:29

Für mich ist es halt wichtig, dass die Sprache, die ich benutzen werde, optimal ist, da ist mir auch der Schwierigkeitsgrad egal.
Keine Sprache ist für jeden Zweck/jede Person optimal, alle haben Vor- und Nachteile. Ich würde dir C# empfehlen. Ist aber Geschmackssache.

Renegade

Alter Hase

Beiträge: 494

Wohnort: Berlin

Beruf: Certified Unity Developer

  • Private Nachricht senden

3

17.04.2014, 19:49

Es gibt zwar keine optimale Sprache, aber im Zusammenhang mit Unity möchte ich dir C# empfehlen. Um deine Entscheidung endgültig zu treffen solltest du vielleicht hier beginnen: http://forum.unity3d.com/threads/19302-Scripting-Section-FAQ
Liebe Grüße,
René

Toemsel

Treue Seele

Beiträge: 310

Wohnort: OÖ

Beruf: Student und Programmierer

  • Private Nachricht senden

4

18.04.2014, 11:07

In C# gibts übrigens auch "var"

Cranberry

Treue Seele

Beiträge: 312

Wohnort: Innsbruck, Tirol

  • Private Nachricht senden

5

18.04.2014, 11:08

Ich hab mit Javascript begonnen, bin dann auf C# umgestiegen und will nie wieder zurück.
Ich finde den Syntax angenehmer, z.B.:
javascript: var isGrounded : boolean;
C#: bool isGrounded;

C# hat aber auch seine Nachteile. So braucht yield WaitForSeconds() eine eigene Funktion in der der Code ausgeführt werden soll.

Ich würde C# nehmen, da auch die meisten neuen Tutorials in dieser Sprache geschrieben sind.

Toemsel

Treue Seele

Beiträge: 310

Wohnort: OÖ

Beruf: Student und Programmierer

  • Private Nachricht senden

6

18.04.2014, 11:12

@Cranberry
Warum sollte das ein Nachteil sein?
Das yield Schlüsselwort hat seine speziellen Einsatzgebiete.
Wenn du das yield als allgemeines return verwendest, kann das .net Framework nichts dafür.
Und auf Unity bezogen. 1 mal ausprogrammieren und dann Parametrisiert aufrufen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Toemsel« (18.04.2014, 11:18)


7

18.04.2014, 15:53

Unity verwendet kein JavaScript, sondern UnityScript. UnityScript unterscheidet sich sehr von dem JavaScript, das man aus dem Web kennt: In UnityScript gibt es z.B. statische Typisierung und klassische anstatt prototypischer Vererbung. Die meisten JavaScripte lassen sich deswegen auch nicht ohne Änderungen in Unity verwenden. Genauso wenig kann man auf JavaScript-Bücher zurückgreifen, wenn man UnityScript lernen möchte. Soweit ich das beurteilen kann, gibt es für UnityScript auch keine Dokumentation über die Sprache an sich. Demnach ist es auch gar nicht so einfach, etwas über die Eigenheiten der Sprache zu erfahren.

Hinter der fälschlichen Bezeichnung von UnityScript als JavaScript stecken vermutlich Marketinggründe. Ganz in der Tradition von JavaScript also. ;)

Aus diesen Gründen würde ich auch eher zu C# raten (oder Boo, falls dir solche Sprachen mehr liegen).

theJamSP

Frischling

  • »theJamSP« ist der Autor dieses Themas

Beiträge: 10

Beruf: Schüler

  • Private Nachricht senden

8

18.04.2014, 19:57

Erst einmal vielen Dank für die vielen Antworten! Das mit UnityScript wusste ich überhaupt nicht, ich war mir 100% sicher, dass es JavaScript war. Nun ich werde dann wohl C# nehmen, da das ja von allen empfohlen wurde. Danke dafür :D

P.S. @Toemsel ich weiß, dass es in C# es auch var gibt, aber wegen des Arbeitsspeicher ist es besser, int und so zu benutzen, da das weniger Ram verbraucht (glaube ich)

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

9

18.04.2014, 20:52

Du glaubst falsch.
C# bleibt statisch typisiert, dementsprechend wird das auch statisch im Compiler abgehandelt.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Spiele Programmierer« (18.04.2014, 21:04)


Cranberry

Treue Seele

Beiträge: 312

Wohnort: Innsbruck, Tirol

  • Private Nachricht senden

10

19.04.2014, 11:40

@Endgegner: Selbst Unity3d nennt "Unityscript" Javascript. (create new javascript, Engung: .js, usw...)
Daher kann man es glaub ich ruhig Javascript nennen auch wenn es nicht so viel mit dem JavaScript aus dem Web zu tun hat. ;)

Werbeanzeige