How to learn programming for Unity?

I have NO prior knowledge in programming of any sort so here are some questions:

  1. What language should I choose (If C# should I learn C++ first)?
  2. Where could I get a book/tutorials for that language?
  3. Do I need to know specific Unity programming to make a proper game?

Thanks in Advance.

1) Pick either c# or javascript. c# is a little harder to learn at first, but you get the benefit of tutorials on how to use it, javascript is a unity specific language with no real language documentation. If you pick c#, don't pick c++, they're not really that related besides the c in the name

2) Most bookshops with technical sections will probably have c# books, otherwise amazon and the like definitely does. For tutorials, they're everywhere, google is generally your friend there (Type in c# tutorial and you'll get a bazillion links).

3) http://unity3d.com/support/documentation/ScriptReference/ is a good reference for classes and functions you'll want to use

I find JavaScript simplest but this is just a personal preference. For documentation check out http://unity3d.com/support/documentation/

You will need to learn Unity specific commands and identifiers. These are all in the documentation.

I found these tutorials at http://www.unity3dstudent.com/ to be the best. They all video tutorials and they go quite a bit into scripting with simple line by line examples.

I would go for C# as a language.

Our own shameless plug here...

If you are interested in game development, you might also be interested in our online 4-day course on Game Development with Unity: http://gamedevtraining.zymichost.com

Its interactive so you can ask questions from the instructor, and share your screen live. Its only over weekends, and since we are doing this live for the first time ( we usually do in-person), its very affordable.

To register, email: gamedevtraining@gmail.com