Welcome back! Unity is a cross-platform game engine giving you the ability to create games for mobile, desktop and console games as well. This is a very popular piece of software for game development, so let’s hit on some of the most popular programming languages you could use for Unity.
Starting off let’s go into C#, this is the mother-load language that is supported with Unity, you don’t have to use any wrappers or anything like that. C# is a managed language which was developed by Microsoft many years ago, today, it’s still a massive language used for many different projects including game development. Luckily for us, Unity has a page dedicated on their website for this specific language:
Scripting in Unity for experienced C# & C++ programmers | Unity
For programmers new to Unity Unity supports C#, an industry-standard language with some similarities to Java or C++ In…
After looking at many different forum posts for Unity, it looks like the general consensus is C# = Best for Unity. If you plan on using Unity for game development, C# is the main language for you. Another reason why C# is probably the better language for Unity is also the learning section on Unity, most of their tutorials for coding are using C#:
Learn game development w/ Unity | Courses & tutorials in game design, VR, AR, & Real-time 3D |…
Free tutorials, courses, and guided pathways for mastering real-time 3D development skills to make video games, VR, AR…
Luckily for you, C# is a very popular language with tons of tutorials all over the place, here are some of the top free resources for learning C#:
TutorialsPoint C# tutorial:
C# is a simple, modern, general-purpose, object-oriented programming language developed by Microsoft within its .NET…
FreeCodeCamp on Youtube also has a very good tutorial:
You may also want to visit Unity’s tutorial on scripting on their website:
Learning C# and coding in Unity for beginners - Unity
You want to start learning to code in Unity so you can get going on your first game, but you don't know where to begin…
Without a doubt, C# is the language for you if you’re trying to develop games using Unity.
Rust, C / C++
Now these languages are all probably in second place, Unity is pretty much meant for C#, but you can essentially wrap this code within C# and compile it that way or use some of Unity’s packages to develop your games. I am definitely not an expert at this, so let me link a few tutorials / documents that may help you with this journey:
Using Rust In Unity:
Rust(lang) in Unity3D
How to use Unity’s Native Plugin interface to call fast, safe code in Rust
This user was able to use Unity’s native plugin inside of Rust, keep in mind this tutorial is over 6 years old but alot of it may still be relevant.
Using C / C++ libraries with Unity:
Integrating Native C/C++ libraries with Unity as Plugins (A step by step guide)
As a Graduate Research Assistant at the Virtual Reality, Simulation, Imaging and Modeling (ViRaSIM) Lab at the…
In this specific tutorial, the writer is able to use native C and C++ libraries inside of Unity’s environment, essentially you call the C / C++ code from a Unity C# script.
With these types of languages you can gain alot of functionality from your Unity environment. Ultimately, C# is by far the best way to go if you’re planning on doing game development in Unity, but it is possible to use other languages too, is it ideal? Probably not, from everything that i’ve read so far most people recommend just using C# OR use another game engine for your specific programming language. Did you learn something new? Let me know! Thanks so much for reading!
if you have any suggestions, thoughts or just want to connect, feel free to contact / follow me on Twitter! Also, below is a link to some of my favorite resources for learning programming, Python, R, Data Science, etc.