Coś źle słyszałeś. W Unity3D używa się C# albo JScriptu (Java Script jest często mylony z Javą, a to dwa różne języki, tylko nazwa podobna, ale nie przypadkowa). Ewentualnie można ponoć jeszcze Boo, ale wycofali wsparcie dla tego języka. Najlepsze wsparcie ma chyba C# (przykładowe kody).
Nauka C# (i Javy - nie JScriptu), jeśli jesteś noobem po kursie C++, to przede wszystkim przestawienie się na pełną obiektowość, czyli jeden skrypt (plik) to jedna klasa, dziedzicząca najcześciej z innej klasy (lepsze określenie to "rozszerzająca inną klasę") i nadpisywanie jej metod.
Składnia jest podobna, ale jest prościej, bo nie ma wskaźników, trzeba tylko wiedzieć które zmienne przekazują wartość (kopie), a które wskazują na obiekt.
Ja bym radził nauczyć się podstaw C#, nie powinno to dużo zająć. To nie to będzie problemem w używaniu Unity.
- Problemem może być w ogóle zrozumienie jak działa engine i po co tak, a nie inaczej. Czyli kolejka zdarzeń, pętla gry, użycie deltaTime, dlaczego fizyka (albo mechanika) gry jest aktualizowana według zegara, co to są naprawde wektory i po co one są.
- Jeśli chcesz robić gry 3D, to musisz się orientować w modelowaniu 3D. Pomaga na przykład znajomość Blendera.
- Koncepcja programowania opartego na komponowaniu z małych elementów większych obiektów. Drzewo obiektów (albo node'ów), obiekty mające dzieci i rodzica.
- Znajomość API Unity. Bo żeby cokolwiek zrobić za pomocą skryptu, to musisz wiedzieć jaka metoda za to odpowiada.
Nauczenie się składni C# to małe piwo przy tym.
W Twoim przypadku jeszcze dochodzi angielski. Naprawdę pomocne jest, gdy rozumiesz co czytasz, albo co ktoś mówi na filmiku.