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 trialBrent Pfefferle
3,641 PointsIf 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
Jon Mirow
9,864 PointsBased 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.
Stefan Feldner
5,359 PointsYou 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
3,641 PointsI actually already know C++, took a college class on it.
Stefan Feldner
5,359 PointsWell I would pick C++ then. You get into game industry much faster, and you already know the language.
Brent Pfefferle
3,641 PointsWould C#/Unity not give me a better chance to "get noticed"? I assume it would.
Zachary Kaufman
1,463 PointsI 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.
Stefan Feldner
5,359 PointsI 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.