I am considering getting a qualification in game programming but all colleges in my country work on unity. What to do? How to convince them teach normal AAA engine instead of unity?
Take the course. You’d actually be better off with Unity and C# on a college programming course than Unreal. Blueprints are specific to UE4 so the skills arn’t really that transferable to other engines. UE4 C++ is also a bit of a wappy C++ specific to the engine aswell and can be a bit complicated for beginners.
Yes it might not look as pretty as UE4 but that doesn’t really matter on a course its more about learning the programming skills than releasing the next AAA blockbuster. If you know how to program generally then you can pick up any engine. Lots of engines use Lua as scripting language which is easy if you know C#.
Your chances of getting a job as a game programmer will be alot higher if you can transpose your skills to any engine rather than a specific visual scripting language on one engine.
Plus then you’d learn why functions and interfaces are useful and appreciate working in teams
Having certification in C++ would probably be more useful than C#
Are there any higher level courses on general game design or game programming (not using an engine, building from scratch, C++ preferably) offered at that school?
It might be better to take one of those if available and then do an online course using UE4 to transfer your new skills to the engine.
Very true. Not saying C# is better than C++ or vice versa, just saying it’s easier to grasp. Learning C++ by using UE4 when you can’t program at all sounds like a good way to put you off for life
C# syntax is very similar to other languages whereas C++ syntax can melt anyones brain. Even better, download UDK and learn Unreal Script (I think I might be on my own there…)
My point was more about blueprints than the C++ as Dudester loves the blueprints (which is fine, yay blueprints). Just trying to make him understand that a more general knowledge of programming would be more useful than just knowing a system specific to one engine.
To be fair the whole point is moot anyway as he stated all the courses use Unity and I have a feeling Dudesters powers of persuasion won’t be enough for them to change the entire curriculum.
So if the choice is:
a) do the course in Unity
b) try to convince them to change the entire curriculum and then don’t do the course because they won’t.
Go for A.
Here in Dallas, you can’t shake a stick without hitting someone looking for a C# developer. Granted, they want full stack, but still…
And…why do “all the colleges” teach Unity, maybe there is a reason you should look for, instead of dismissing it as “not a normal AAA engine.” That sounds more like some sort of bias instead of weighing to pros, cons, etc.
Unity is more suitable for teaching programming than Unreal is. Unity does have a lot of magic functions but Unreal is littered with macros that are there to hold your hand but at the same time confuse you with Unreal specific terminology that you can’t use anywhere else. C# in Unity is straight forward and makes for an easier approach to programming.
That being said modern C++ is not as scary as everyone who used C++ 10 years ago would have you believe. The day to day code you write in Unreal for general game-play is almost identical to C# apart from the macros.
If you really want to learn programming however you would not use any game engine at all. You would program simple console applications that reads and writes lines to a console. It gives you a solid foundation for your future programming.
In my experience Unity attracts programmers and Unreal attracts artists that make their own Blueprints. Personally I enjoy Unreal Engine today for its mixture of C++ and Blueprints although it has taken a while to get comfortable with it but Unreal Engine feels a lot better to use than Unity because of the more complete feature list and rapid development.
Don’t do the Unity course under any circumstance…
Not unless its your engine of choice and you definitely plan on developing games with it (even have jobs lined up)… It won’t help you with UE4 whatsoever! To borrow a popular expression: Its not the language its the API stupid! The whole Unity-C# / UE4-C++ is overblown… Its all about the API. If you do a Unity course you will be working in Unity’s ecosystem which doesn’t carry over to UE4. The only positive thing is, it will be easier to get certified… But that won’t help you later…
So what should you do? Faced with the same decision… I’d be prepared to fly across the country / go overseas to find an Unreal course. A crunch / intensive 2-week course in Unreal / C++ would be better than a term in Unity! Look at the recent crash course at Unreal Academy for instance… What is it that stands out? Its so highly-specialized! That’s the secret to game work or API heavy tools. Whereas, most colleges teach Unity because its an easier syllabus - for them…
But what if you still can’t find an Unreal course anywhere? Why not head over to the Lumberyard forums and hit them up with the same question… LY is an Amazon-backed CryEngine fork with C++ and visual node programming in the pipeline. So its not a bad fit for learning Unreal… So see If Amazon have an Education partner etc. Both engines are better aligned versus Unity, and you can bet with the success of UE4 that LY developers are looking to Epic to set the bar not Unity.
If it is an qualification for game programmer he is after, then it should not matter if it is Unity or Unreal.
I would look at the rest of the curriculum before the engine they use to teach those concepts. Do they teach Algorithms&Datastructures, design patterns? Maybe some AI, graphics programming or physics etc?
I have seen great Unity courses that teach proper programming practices that are transferable to all languages or engines. On the other hand I have also seen ■■■■■■ Unreal courses that go only nitty gritty into Blueprints and the UE4 Api and the most basic of programming skills, completely ignoring more transferable concepts.
Most of those unreal courses also go deeper into blueprints than needed for someone that is after a pure programming course. If you just want to learn an engine only, it is a different story.
TLDR; If you want a game programmer certification, you want a course that teaches programming concepts first and the engine second as a means to the end.
Didn’t one of the community managers mention a possibility of a certification program?
I took a look… But tbh its a bit of a mixed bag without actual links to specific Video-Games or UE4 courses.
A couple of times links even just redirected to devs personal pages,WTF? Might need to be curated better…
Unity editor requires less hardware to run.
It’s a lot cheaper for institutions; some are beginning to use Godot because it’s even lighter than Unity.
But if one is really “serious” about game programming as a career then the best thing to do would be a bachelor’s degree in computer science and develop your own DirectX little game engine before you go job hunting.
If one can’t do that, gather 10 years experience somehow, publish games, publish things.
A course teaching how to press buttons on game engines will have almost no impact on landing a job.
Many Unity devs land jobs, it isn’t because they know Unity. It’s because they pick their iPhones, launch a bunch iOS games and tell HR: “-I built that.”
It’s proven experience, proven ability to commitment.
Unless all you did was “asset flip” and copy tutorial scripts, in that case after a few practical exames you’re out…
“Certification” that Unity is selling is only useful for them to grab more money from you and for the wild-west called internet.
Anyway, there’s hundreds of thousands of Indians and Russians “selling scripts” for $10, drastically reducing your value as a “Unity C# developer” after you’ve paid so much for these “game programming courses”.
Take the course to learn the ins and outs of development. IMO, Unity lacks some built in components that Unreal comes with, but in that lack, you learn how to make due. One time, I had to make stealth AI, but all Unity offered was a navmesh and that’s it. I had to make the whole system from scratch, something UE4 has from the jump.
However, don’t listen to what others say about UE4 skills being non-transferable. All skills can be transfered if you know what you are doing and how to do it. Good code is good code not matter how it’s done.
No one said that UE4 skills are non-transferable. But if you want to get a qualification as a game programmer, getting a proper programming course is much more transferable than just learning Unreal and it’s tools+API is. Ofcourse they are not mutually exclusive. But most courses that focus on an specific engine are full of noise and other fluff.