From College, to computer graphics, to video game: from Unity to UE4 and why

Recently graduated in General engineering, i’ve had this passion for video games and especially FPSs for most of my life now.
This idea of building my own game has been growing for quite some time as i felt more and more frustrated by the FPS market.

From College to building a video game there’s been a slow process that took a year for me.
First of all, the video game industry has an awful reputation, it’s a tough industry even with its 20%+ growth. In higher education, if you’re not in a dedicated video game College, the closest you’ll ever get to video games is taking computer graphics courses.
I did follow a great computer graphic course, started from scratch and build an OpenGL renderer, studied BRDF, added normal maps… In rendering, there’s a lot to learn, and if you want a job in this field you need a PhD to be relevant.
Otherwise you could find a job in the industry, but far from the game itself (Big studios hire students from famous College for their Data analysis for instance).

I’m from a famous french College, also spent a semester at Berkeley, if you look at my resume i could probably apply in the industry as Data Scientist as most my friends do in other field.
It would be good and safe money, good career perspective.

Back in November i was still diving into the rendering side of thing, built a raytracer, was a really cool way to use my Monte-Carlo Math, practice some C++ etc… The truth is, there isn’t many jobs in rendering, or you’ll need a PhD. And i’m not speaking only of video game industry, in raytracing it’s even more obvious.

As i wanted to start my own company anyway, and while it might sound insane given the opportunities, i’m gonna give it a shot and build this **** video game i dream of playing.
I love the graphics, i love the design, i love the sound, i love the music, the story, the experience. I just love this entertainment product and i’m gonna build mine.

I started early December messing with Unity, build a multiplayer FPS with matchmaking. I studied and practiced fast prototyping, short development cycle/Agile development in the past already, and Unity was a great way to build something fast while discovering what game engines were about. But as i started polishing some elements, i had to starts using beta features downloaded straight from GitHub and rely on the Unity store (which is incredible btw).

My first try at defining the visual atmosphere of my project was this video:

Then i wanted to test if Unity could something of the scale of ‘The Infiltrator’ demo from Unreal Engine. Imported the mesh, applied a couple texture, grabbed some normal map from the original source.


While it was fun and really interesting experience, i also slowly realized that Unreal Engine had already shown in its tech demo and games shipped, its ability to create the kind of atmosphere i was looking for.
I’ve been really pleased with Unity engine rendering capabilities, but all the eye candy came at the cost of using beta features, that seemed “rough around the edges” and not integrated into one proper workflow.
Moreover there’s no history of product shipped with the quality standard i’m going for.

On Infiltrator, overall Unity wasn’t as optimized as UE in many way, and i actually had to use Unity 5.6 beta to be able to properly work with this huge mesh. I had several Unity crashes with 5.5 and 5.6 working on the infiltrator demo.
Navigating the scene in the editor was painful and took a lot of resources from my system. The final output performance wasn’t neither on par with UE version.

The lack of proper smooth workflow to achieve the high quality i want on Unity, and the history of Unreal Engine making high quality products in relevant atmospheres for my project made the choice of picking Unreal Engine quite straightforward. :slight_smile:

Original post on Unity forum: