Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Game Development

Brent Pfefferle
Brent Pfefferle
3,641 Points

If I want to make games, is C# and Unity my best path to take?

I am sure the answer is obvious. However, I just want some input. At the moment, I am a front-end developer (HTML5, CSS3, JavaScript). I have also made some useful programs and small games using JavaScript and Phaser.js. However, even though JavaScript is a top language, I am having my doubts about the current state of HTML5 browser games.

In brief, I want to make games that people can download easily and that I can monetize. With that said, I have taken an interest in developing for either Google Play or the Apple store.

Question: Should I develop hybrid apps since JavaScript is my strongest language or should I learn to code native by changing my focus to Java/Android studio or C#/Unity (not native but still effective). Just looking for some advice.. I have been thinking about this a lot of the past week or two and I believe that C#/Unity might be the best option.

5 Answers

Based on what you’ve said, I would say so, yes.

The advantages of unity are broad platform support, low barrier to entry, fast development and iteration, easy analytics and monetisation, fantastic third party support plus because of its wide adoption, a huge knowledge base in other devs!

If you were making a PC - based first person shooter, it might not be. But for mobile platforms, it’s really ideal for a very broad spectrum of games and makes it about as painless as it’s likely to be to port the game later - to the switch for example.

I would definitely use a games engine for game dev rather than hybrid apps, even with the learning curve. Programming is programming, but game dev is a different kettle of fish.

You could use the Unreal Engine too and learn C++, Unreal Engine offers better graphics and blueprint coding system, but I think C++ is harder to learn then C#. If you only want to make mobile games then Unity is much better, the performance is better and the 2D editors too. But if you want to do more game development in the future for big companys then C++ is probably more important.

Brent Pfefferle
Brent Pfefferle
3,641 Points

I actually already know C++, took a college class on it.

Well I would pick C++ then. You get into game industry much faster, and you already know the language.

Brent Pfefferle
Brent Pfefferle
3,641 Points

Would C#/Unity not give me a better chance to "get noticed"? I assume it would.

Zachary Kaufman
Zachary Kaufman
1,463 Points

I would say Unreal C++ and Unity C# are on the same level of how "known" they are. However, in the world of teaching coding to newbies, Unity is dominant. That's primarily because it's more new-user friendly and C# is a lot easier to learn for people new to programming. But if you already know C++ Unreal is a great option.

I donΒ΄t think the engine matters if you want to get noticed. The finished product is what's important and Unreal delivers amazing games with nice graphics but less on the mobile side. Unity is better for mobile games but Unreal is better for 3D and graphics.