Search code examples
c#unityscriptunity-game-engine

Unity: Do I have to learn one, or both (C#, UnityScript)


I originally thought that one had to know both C# as well as UnityScript to develop using Unity. But it now seems that I only need to know one. So,

  1. Do both the languages do similar things and hence I should code in one, or should I learn them both as I'm supposed to use both?
  2. Does Unity only use C# and/or UnityScript cuz I always thought games had to use at least 2, even in Wikipedia, it's written as if it's a definition or something. (I know some games can be made solely using pygame and stuff, but I mean things like AAA titles).
  3. Continuing from 2 Or is it that you do use more than just C# and/or UnityScript in case of using Unity, and Unity is only for certain parts of the game?

Solution

  • "unityscript" is deprecated.

    You must use c#. It's that simple.


    From my very limited development in Unity:

    It's an either or thing.

    I've written quick test-of-skill games using only C# as I'm more familiar with it from previous knowledge of C and C++. While reading the docs to decide whether or not I would try to port code over to the UnityScript code (again, as a test of skill), it became my understanding that either way you get the end result you want.

    In these games I wrote all sorts of components, including UI, game object, terrain collision, even fiddling with jumping and the gravity engine. Never once did I have to stop and go "well darn. Looks like I need to use Unity Script for this."

    Games in Unity, as far as I am aware, can use both. But I've never been forced into having to use one or the other.

    If you ever run into a part where Unity forces you to use both, go ahead and come back to this post to yell at me.