OXM INVESTIGATES… GAME ENGINES
OXM speaks to the professionals about exactly what game engines are, which ones they use and how they work
Frostbite, Unity, Unreal… we’ve all heard of their names and seen the jaw-dropping, beautiful demos that showcase their tech and highlight advancements in lighting, animation, physics and particle effects, but what are they really? Ask ten different people what one is, and you’ll likely get ten different answers. Yet game engines are the most crucial part of in-game development, because until a team obtains or creates one, almost everything in the pipeline is put on hold. Despite this, for most people outside the games industry they remain a mysterious entity. So join us as we clear out the grime and sediment to give you a clear idea of just what game engines are capable of…
Well, what are game engines? “Simply put, a game engine is a platform for your game to run on; to load the world, place you in it, and accommodate your stay,” explains CD Projekt Red’s tech team. “There are many kinds of engines. Depending on your game’s requirements, each one will differ in how much work it actually does. They render (display) the world, calculate physics, play sounds and more. Engines are all the code that is not specific to your game and can potentially be reused in a different title.” By having an engine that already has ways of handling things like rendering, physics, lighting and artificial intelligence straight out of the box, it makes creating character models and having them behave in a given way quickly achievable. Such game engines allow development teams to focus on actually making their games rather than having to essentially reinvent the wheel every time they wish to do so. It’s also one of the main reasons why new developers will opt for using engines that are readily available for free, such as Unity or the Unreal Engine.
They’re also designed to have a modular nature so that it makes it possible to improve or adjust an engine’s functionality by employing additional software, referred to as ‘middleware’. This type of software is designed to deal with specific tasks - such as Audiokinetic’s audio engine, Wwise, or Nvidia’s PhysX engine, which handles physics - that the original engine might not be able to perform quite as well. There are even some software companies that will provide an engine’s entire source code so that more advanced developers can directly manipulate it to fit their needs.
But sometimes, despite all the availability and flexibility of these engines, developers will need to spend the extra time and money in designing their own, like CD Projekt Red did for their REDengine. “Each game engine is tailored for a specific experience,” explains the CD Projekt Red Tech team. “Our games focus on creative storytelling in a living and breathing world, so we required an engine and tools suited for these particular experiences. After careful consideration, we arrived at the conclusion that third-party software wouldn’t cut it. It would probably take longer to adjust a commercial engine to our needs than just make our own from scratch. So that’s what we did.” Having an engine specifically tailored to suit their games allows CDPR to have an unprecedented level of control over every aspect of development so that they could accomplish any goal they set. And having their designers in constant cooperation with the programmers meant they were able to adapt the engine to better suit their needs.
However, as you can imagine, this isn’t a task for the faint-hearted. “Creating your own engine requires a lot of work and a dedicated team of professionals,” says CDPR. “A modern open-world engine is a big and complicated beast. Taming it requires a lot of knowledge and experience. Moreover, before the core of your engine is ready, gameplay systems cannot be built on top. So there’s a lot of pressure and little luxury to polish one small element of the engine for an extended period of time. Also, when we encounter an obstacle, we have no other option than to rely on ourselves and fix it. No outside support is possible, whereas for the commercially available engines out there it’s sometimes offered.”
Even those that have any idea of what a game engine is tend to oversimplify their role, thinking they’re responsible for just one aspect of a game, like graphics or performance. This results in many misconceptions. “I think the biggest misconception about game engines is that they are some sort of magical piece of software powered by the blood of unicorns that can make any game into a reality with just a few mouse clicks,” explains senior developer relations technical artist, Zak Parrish. “The truth is that there’s no ‘Make Game’ button in Unreal Engine and you will
“A modern open-world engine is a big beast. Taming it requires a lot of knowledge and experience”
still have a lot of work to do to make your game into a playable experience. Making games is a profession for the passionate.” But the biggest misconception of all seems to be the belief that problems within a game, like performance, frame rate and crashing, are the fault of the game engine, when in fact this is almost never the case and is more likely a programming problem.
Possibly the most well known of all game engines is Epic Game’s Unreal Engine, which was used to develop the immensely popular
Fortnite and was apparently pivotal to its success. “Fortnite has been a labour of love at Epic,” says Parrish. “We’ve worked on it for a long time to turn it into the game it is today. Every part of that process – every refactor, every overhaul of a major system, every outright replacement of a series of game mechanics – was only possible due to the flexibility afforded by Unreal Engine.
“The result is a game that serves as a solid platform upon which we can continuously expand and build,” continues Parrish. “Every key aspect that is Fortnite: the robust and evolving Save the World experience, new game modes such as battle royale that didn’t exist at early access launch, the release of the game on every conceivable platform from high-end PC to console all the way to mobile devices, even the ability to keep new content rolling for players at a virtually constant pace, every part of that development process has been powered and streamlined by Unreal Engine.”
There are now plenty of game engines available for free, some of which you’ll see on the next page in our rundown of some of the best, so if you’re interested in venturing into the world of game development and creating your very own Fortnite, here’s some parting advice: “Don’t wait, don’t make excuses; just go make a game,” says Parrish. “Honestly, my first bit of advice for aspiring devs right now is to fully grasp that there has never been a better time to learn game development. If you’re new to the game dev world, you probably have no idea that you’re in a real golden age right now. You have so much technology and opportunity at your fingertips: free game engines like Unreal, free 3D apps, free 2D apps, tons of free training on how to do things… I look back at when I was first learning this stuff and I’m floored.
“There’s really nothing stopping an aspiring developer right now from just making a game and shipping it,” Parrish continues. “Sure, if you’re by yourself you have to limit your scope a bit, but if you want shipping experience – the exact experience studios care about – you can build a game and launch it on just about any platform these days, all without much, or any, money out of your own pocket. And from tools to source code to tons of training content, Epic Games and Unreal Engine are behind you all the way.”
Above See all that lush foliage? The game engine is what’s helping animate it.