Help a teacher. UE4 Vs Unity for learning games development in a class environment.

I recently started a new temp contract working at a college in the UK teaching games production (AS+A level). The course is in a sort of transitional state where there is only myself (a 3d artist) and one other person (a programmer) teaching the course.

Im trying to talk the staff into using UE4 as the primary engine for the students to learn as i think this allows the greater flexibility. The students who are more artistically inclined can use blueprints and get a foundation knowledge of programming, at the same time, the more mathematically inclined students can move into doing more C++ intensive work. I feel like this would allow ALL the student to excel in all modules. However, the programming instructor isn’t keen on UE4 and insists that Unity is the way to go.

It would be really helpful if i could backup my argument with some statistics and some industry know how beyond my own.

I was hoping i could get a discussion going here to see how other people view the issue. I would very much like to hear both sides of the argument to educate myself if i am mistaken.

so, thoughts?

Senseless discussion, I think…

I’m not convinced you can sway your programming instructor that way, what weight do stats carry if they dont want to touch blueprints or C++ and prefer C#?

@ArthurKhusnutdinov I disagree.
@SteveElbows it’s not solely about convincing the programming instructor, Its about convincing management. neither I nor the programming instructor have the final say.

I think if i could present the stats that 99% of new developers and degree level courses are using UE4 (reductio ad absurdum) then i think it would leave little option but for the upper staff to say “okay, we need to be teaching this”.
On the other hand if only 1% of developers are using UE4 that would inform me that i need to keep my cake hole shut and do as I’m told. :slight_smile:

For the record, the programmer CAN already use C++ and UE4 etc, they just don’t (I’m absolutely NOT trying to get this person out.) This is, I feel doing a disservice to the students who want to focus on the game art side of things and are struggling massively through the programming modules because their brains just don’t work like that (to this, i can relate).

There’s more AAA games that use UE4 but most indies and mobile games use Unity. There’s not enough statistics to get a more accurate idea how that compares.
For artists, UE4 is way better, the material system and lighting is just so much easier to control and get good results, for example in Unity if a material doesn’t quite do what you want you have to write a new shader, whereas with UE4 it’s very easy to use the node-based material editor to do some changes. For programming, it’s good to learn C++ though C# is easier, but Blueprints in UE4 allow you to do some very advanced things very easily. For example, I was able to do some vehicle controls very easily with some physics thrown in that is beyond what I’d be able to figure out in Unity.

Many programmers do prefer Unity over UE 4 (not UE 3), It’s also for good practical reasons. As an artist I don’t blame them at all. In fact we were able to get actual game done in Unity vs trying to get it done in UE 4 because of it, UE4 is still under construction phase, many things are constantly changing from version to version that could drive developers crazy and some of old timers i spoke to really hate blueprints for their own reasons, plus some things in UE4 can look more time consuming than necessary for a programmer who is used to Unity. As an artist i found the interface of Unity to be straight forward as well. I still prefer UE 4 for those pretty looks, shaders and lighting if you are doing something crazy, but everything else Unity can handle very well. In fact it can handle some things better. I feel UE needs a much larger team to handle it sometimes.

Simplest of examples: when i first started with game engines I had no clue how to view my game with my camera setup, in UE 4 I had to go through a blueprint and then some, and then i forgot again and had to look it up every time to remember how or ask the programmer to help me remember and sometimes it just didn’t work at all. In unity I didn’t even need a tutorial and it just worked. Parent camera to predetermined path plus script if you need it press play and its what you see is what you get, done deal. Some overly simple things like that can make you happy as an artist starting or working in a game engine.

In the end we felt more productive there for medium to small games.

Plus Don’t forget Unity has a strong user base and a very strong market for scripts you can use and tweak to help you out and learn, I think that’s another attractive feature for small teams in case they need them.

Lastly I always felt the Devs behind Unity have a more clear cut direction as to where the engine needs to go (even if its slow to implement sometimes) while I feel that sometimes UE is trying to please everyone with everything at the same time. The latest updates sound great and they hired some industry vets recently to start massively boosting the graphic engine, lighting and shading + performance in Unity I feel UE 4 would have some serious competition then. And that would be great more options for us users : ).

Thanks for the clarification. I’m not convinced any stats you can harness will make your case easier. Perhaps try searching online for UK jobs for Unity v jobs for Unreal and a picture may emerge without too much effort.

Are there any universities you can talk to about this, to see what they are doing with games courses these days and which engine skills it would be advantageous for you to give your students?

Personally there were no game courses when I was a lad so I am always envious. I like C# and I like visual stuff like blueprints too. If I were teaching, especially at intro level, then blueprints would have a number of obvious appeals to me so I am curious as to why your programming instructor doesnt want to go there. Visual scripting alone is not going to magically turn people who are disinclined to get their heads round programming into proper programmers but anything that can reduce the barriers to entry and reduce initial intimidation is a plus.

I’ve worked with a couple of universities doing 3d art modules and both of them were teaching UE4. I can see by these comments that the situation isn’t as clear cut as i thought it would be. My area has always been restricted to 3D art, I’ve only recently moved into doing “proper” games development so really appreciate the input.

maybe I’m just a little blinkered on the subject, UE4 is the only game engine that has stuck for me.

Don’t be too envious SteveElbows, there are a lot of courses out there now but the sheer number of them that are totally under staffed and/or under par would make your boots shake. and the computers the students have to use… wow. (not in the good way)

Ah, I can imagine. The dodgy spec of the computers doesnt lean in UE4’s favour either I’m afraid.

im not even kidding steve, some of them don’t have graphics cards in the place i’m at now.

UE4 runs on laptops without video cards, I would recommend going UE4 to teach. I am applying for a teaching job at a tech college next year teaching UE4/C++ on laptops without dedicated gpus. I got pretty good performance and could run most of Unreals game templates and developed some resource heavy games on a laptop without a gpu (i7 with ssds were important to counteract no gpu, Unreal does a good job with texture streaming so you can stream upwards of 2gb of textures without a gpu). So, first hand I would highly recommend UE4, you just need to run at low settings.

If you want any tips or just want to chat pm me.

Are there any prerequisites for the course, like basic programming skills?

If not, I would definitely go with UE4. Using C# with unity is pretty straightforward for a programmer, but for students not used to that way of thinking blueprints is way easier to grasp. And as you said, over all UE is more artist friendly.

My main argument would be this:
The course is targeted at all students. The more technically inclined will have no problem with either software, but it will make a big difference for those leaning towards art. To start with many of them will have a difficult time grasping even the basics of text based scripting and would need a dedicated programming course to stand chance. Second, the better art tools in UE4 will give them a chance to excell in areas where the “programmers” might struggle.

In conclusion, no matter what you choose techies will probably have an easier time. But by choosing UE4 you are significantly leveling the playing field. As for future job prospects, they will need to be prepared to switch to another engine, for example one of the in house engines used by the large publishers.

If you don’t have graphics cards in your computers, You might as well go to something like pythons pygame or html 5 canvas games. Even godot might be a good test for you guys as a free alternative. Seriously though, if you don’t have video cards in your systems, the best you can really do is no textured or menu based games meant for interactivity.

As for the learning curve, with ue4 it is very confusing for me as I’m coming from programming. I love the idea of the visual script, but it is combersome to learn cause you have to 1, learn the api and vector situations. You also have to learn how to establish input and weather or not you want your input to be from blueprints, or from settings from with in the editor its self. You also have to learn tricky things like setting your default map, where unity kinda just has it free flow.

I personally like ue4, but it is overwhelming and intimidating at times. Also the interface can get cumbersome for visual script untill you learn how to make functions such as pins and other things.

With unity, its straight forward with its programming in c# which is why i like it. While the dot syntax confuses me at times, its nice not to have to go through the headache of looking through blueprints, when you have the code sitting right there.

Both have there strengths and weaknesses. If you really don’t have video cards in some of your computers you are seriously limiting the learning of your students. I wouldn’t say they even need a powerful one. I have a Nvidia geforce fx 710 and it runs the editor just fine. Please consider upgrading those computers.

Anyway, its personal choice really. I think unreal is more friendly lately with start ups and students. Unity is great as well, but they allow you to make up to 100k totall from your games before they seriously start charging you for a licence. Ue4 i havent’ checked on in a while, but i believe they are royalty based.

Well I think trying to convince anyone based on feature sets is a lost cause as what would make the difference would be a dollar cost break down as to per-seat requirements.

In Unreal 4’s favor is access to all is free and payment only required if a game is being sold so all of your students will have access to the same tool sets used by Indy pros with out additional cost be it at home or school.

Unity’s feature sets change based on which version you opt for so even if there is a free version to get the full Monty you would have to purchase the pro version at $125 per seat per month. Gets expensive so the first thing to do is to see if there is student licensing

I have a friend who got her master’s degree in game design from UCLAN recently and they primarily use UE4 there. Generally, the trend seems to be most universities in UK use UE4. On the other hand, universities in Asia seem to use Unity more. I’m from southeast asia and some of my former professors in computer science teach game dev courses in Unity nowadays. Maybe it’s related to skills the companies in the area are looking for though. If not a lot of companies use Unity there then it might not help students secure a job.

For Unity the free version would be sufficient

Sorry for the late response having something of a mad week, no, no programming skills required what so ever.

So far they have spent much of their time learning an engine called construct 2 (one which i am not familiar with at all but appears to be sub-par from my limited perspective.) I think the thinking behind it is that they would pick up basic programming from that.

It is a games design course not a game art or game programming course so I do think there needs to be some programming learned.

Construct2 is a stricly 2D engine, so it can’t really be compared to UE4.

If they have extended the basic functionality of Construct2 using Javascript they may be ready for the C# in Unity. Otherwise blueprint all the way…

Is using both an option?

Don’t know how practical this is for you, but I would offer a mix of Unity and Unreal…
I mean that’s what us devs do when deciding which engine is best for a given project.
Assemble Freebies + Marketplace + Asset-Store packs, then show off some fun things.

If you don’t opt for this, then you only show either Visual Programming or Text Coding.
You also don’t highlight gotchas of game design from different axis to different editors.
Students also won’t see where one engine excels over another (strengths / weaknesses).

blimey, doesnt really sell the course, Alice 3 might have been better

ue4 is awesome but takes a while to get the hang of.
blueprints are good but quirky and easily turn to spaghetti
programming c++ is on the more hardcore end of the scale but probably better for future job prospects

unity is easier and does the job well enough
c# is fairly easy and documentation/examples are very well covered