Read the FAQ; discussion questions involving opinion should be posted elsewhere, like on the forums.
Answer by matt smitih
Feb 06, 2011 at 11:23 PM
if you're into Unity for the long term, I'd recommend C#
if you're just tinkering around with Unity to see what it can do ... then UnityScript is fine
I'm currently in the process of switching to C#, since coding in that language is much more current object oriented programming style (e.g. C# for .NET, its very close to Java programming etc.)
I would expect most serious Unity programmers to work in C#
so if you think you'll be doing a lot of coding (in general, or specially for Unity) then C# is the way to go
if you haven't done much programming before, then either (a) learn Unity with UnityScript to get a feel for what programming is, then switch (not too hard) or (b) learn to program in Java or C# first, and then apply what you've learnt to C# programming in Unity
finally ... the C# way of programming in Unity makes it much more obvious that you are programming in an Object Oriented language, and that what you attach a script to a GameObject you're actually adding an "instance" of your script class to the GameObject - but if this last sentence is gobblygoop to you, then you'll want to learn some OO programming concepts before jumping into C# in Unity
I hope this helps ... Matt ..
p.s. I've been teaching programming to novice computer students at various universities and colleges for over 10 years, and am happily throwing my year 2 degree students into Unity with C# - they learnt Java as their first programming language in year 1 - and they're doing fine
my year 4 students last year created some nice games (in teams) - most of them switched from UnityScript (we only started with Unity for the first time, and most tutorials we found were in UnityScript) to C# for their larger second project - see the games from the 2 teams here (some of my students were visiting from a French university ...) http://www.saintgermes.com/
That is an awesome response, thank you. But i have one more question, ive heard that programming in boo is exactly the same as c# just with less typing is that true?
Answer by podperson
Oct 28, 2012 at 08:54 PM
I think there are two significant technical reasons to use C#, the first of which is that the UnityScript runtime adds to the size of projects (about a MB). That said, I'm not sure whether UnityScript generates bigger or smaller code binaries in general than C# scripts of equivalent complexity — I suspect this is a wash. The second benefit of using C# is that the Mono documentation (which is written by and for C# programmers) will make more immediate sense to you as a C# programmer.
Personally, I prefer UnityScript because it's significantly more economical to write code in (less boilerplate) and disagree with the "serious coders use C#" assumption. There's nothing to stop you mixing the two (and indeed calling C# code from UnityScript code and vice versa.) But, if you do pick UnityScript there are the two issues I mentioned above.
Answer by FrostHDD
Oct 29, 2012 at 12:18 AM
Answer by Yanger_xy
Oct 29, 2012 at 12:59 AM
I think C# is a good choice.I don't think it's harder than java script.
If you know one programming language, it's not even hard to learn it,1 week
Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.
The best place to ask and answer questions about development with Unity.
To help users navigate the site we have posted a site navigation guide.
If you are a new user, check out our FAQ for more information.
If you are a moderator, see our Moderator Guidelines page.
We are making improvements to UA, see the list of changes.
Answers and Comments
4 People are following this question.
Setting Scroll View Width GUILayout
GUI button not showing up
How to call parameters from functions in separate scripts?
Items with Statistics(such as attack damage) that actually effect the character?