The History of the Game Engine: Part 13 – Assets
Early on in this series, we discussed the idea of not reinventing the wheel, a metaphor for needlessly doing work someone else has done before. The entire concept of a game engine comes from this idea—a set of tools to take away the repetitive heavy lifting of game programming to free up time in order to be more creative and design better, bolder, and bigger games.
But programming is not the only factor when it comes to creating a game.
A Game’s Assets
A game’s assets are all the little things that the game uses to create the environment. If your game involves shooting aliens while walking through a disused factory, then it will have hundreds of assets. The 3D model for the gun, for example, and those for the walls, chairs, shelves and other furniture you walk past. But it goes beyond that; the graphics for your character, the texture that makes the wall look rough, the bullets you fire and the sound that echoes from the gun’s chamber—all these are assets, too.
In fact, the number of assets used in a modern game is so numerous that it is mind-boggling to try to list them. Even something seemingly simple will have a library of different graphics and sound effects that are needed to make it work.
The Early Days of Asset Creation
Jump back to the early 1980s and the creation of a game’s assets was considered part of the game programming and typically left to the programmer to do. Few tools existed to draw graphics or record sound, and the assets were made through direct code.
Take an alien graphic from Space Invaders. Monochrome and squeezed into a single 8-bit byte, these are completely generated in code, painstakingly handcrafted by converting the required drawn design into a binary map that can then be programmed in hexadecimal-heavy 8080 assembly language straight into the arcade machine’s chipset.
Add its bullet (another single-byte sprite) and accompanying sound effect and already there are three directly coded assets in the game. Improve with a secondary alien sprite to perform animation, plus a similar wiggle for the bullet to look like it is moving, and those time-consuming-to-create assets are adding up.
We’ve spoken about early game engines and toolkits from the point of view of a programmer, discussing how they were used to streamline the laborious coding, handling memory management and other technical issues, yet one of the most important tools they offered the game development community was in asset creation. From early graphical interfaces to design sprites, through to music and sound effect tools, those early toolkits took the weight off the game developer from all sides.
A Game Engine for the Entire Team
Early games could be realistically created by a single person, and they were. Whether it was in professional companies or just hobby enthusiasts in a bedroom, it was possible to make something that was on par with the most exciting releases of the day with just a one-man team.
It didn’t take long, however, for that to change.
It’s natural. Though from the outside looking in, the design and development of a game seemed to be a single skillset, in reality, it was a host of disciplines. There’s the skill in coming up with good game ideas and designs, a different enthusiasm in wanting to program the computer itself, an understanding of art and design to make compelling graphics, and a passion for music and sounds needed to excite with the audio. Plus, even these can be subdivided into many separate specialities.
As the gaming industry grew, so too did the need for dedicated specialists. A game designer was different from a programmer, who again was separate from a graphic artist, themselves someone who knew little about musical composition.
For the game engine to be considered a true encompassing toolkit, all of these different aspects become relevant. Not just a bridge for programmers, the game engine became a wide-ranging structure for the management of in-game assets.
Tim Sweeney’s initial impetus in building the first version of Unreal Editor can be seen to stem from asset management. It wasn’t because he particularly wanted to deal with memory allocation or esoteric storage solutions, but because he wanted to take James Schmaltz’s three-dimensional world and make it easier to put objects in it.
Even earlier than that, toolkits like Shoot ‘Em Up Construction Kit, were beloved because they provided a way to design and administer sprite graphics inside of the program itself.
It’s important because, by our nature, we want to see things appear on the screen. Graphics aren’t merely a component of computer games, they are the most integral part of it. Though plenty of games exist that put another aspect at the forefront, from text adventures through to fast-paced rhythm games, it is with the graphics that most players connect. Game developers aren’t that much different—sure, they want to get the code right and care about the logic, but the real thrill moment of any game creation is when you can see something happen on screen.
As graphics are so important to us, those graphical assets have always been a primary function of the game engine. It’s a side of game engine development that has driven the field and, even today remains one of the biggest draws.
Take Unreal Engine 5, the latest iteration of the premier game engine. Yes, much has been made of its programming tools and superior lighting effects, but it is the Quixel Bridge Megascans asset library that has much of the community excited.
The Megascans asset library is a vast array of photorealistic 3D objects that can be accessed by any Unreal Engine user for use in their games. It gives even the most beginner-level developer a way to make a game that looks like a professional AAA title right off the bat.
It’s important because it shows yet another way the game engine is making sure you don’t need to reinvent the wheel.
Creating Assets from Scratch
Making a professional-quality 3D graphic is art. It’s not just something which most of us would find difficult, it’s mind-bendingly complicated and requires the kind of training, skill, and practice that is equatable to being a top-notch programmer, or any other high-end professional. It’s not something that you can just “knock up” in an afternoon.
Just something as typical as an ornate battle-axe or realistic rifle can take days, or even weeks, of time and effort.
The same thought is true with many of the other assets required. Moving away from graphics, the sound is another field which needs dedication and skill.
Take a car game. It will need an engine noise, the sound of the car braking, maybe some revving, of course.
But what about the sound of the key going into the ignition, the clunk of the door shutting, a seatbelt clicking into place, the background hum of the air conditioning?
To make an immersive game, every one of these tiny pieces needs to come together. In the early 1980s, players were happy with the odd beep or explosion noise, but today expectations are significantly higher.
Can a typical person even create these sound effects assets? Even if they have the right type of car, do they want to spend the day setting up the perfect environment with well-placed microphones to record its noises? Do they really know what all the sounds needed are? Plus, what happens when something in the background ruins the sound effect recording?
How about the music for the game? Does the soundtrack require something electronic and beat-heavy, or a piece that’s orchestral in nature? Would the atmosphere be best served with a 70s-esque progressive rock suite, or thrumming atmospheric soundscapes to evoke a feeling of terror?
Painstaking art that takes graphic design skills and an in-depth understanding of 3D object creation? Sound effect recording that needs specialist equipment, a fastidious approach to cataloguing, and experience in editing? Music composition that needs to be compelling and fit the setting?
The idea that a single game designer could build a top-tier modern game from scratch including all its assets is simply ridiculous.
Online Asset Marketplaces
By providing an integrated asset management facility into the game engine, engine developers have added another layer to the benefit of their software, ensuring that game designers can get on with the work of making their game without needing to take months or years out building their own library of assets.
Today, online asset marketplaces exist where those with a passion for asset creation can hawk their talents, potentially making a living from doing what they do best, while simultaneously removing the insurmountable obstacle of needing multiple skillsets from the game designer. Combined with the free asset libraries provided by the game engine, these online marketplaces ensure a massive range of diverse assets is immediately available.
The relative cost implication of taking the time out to create high-quality assets is significantly more than paying for those that have been professionally created. For game development companies, it makes sense to source these third-party asset solutions in addition to their own in-house artists working daily at creating unique pieces. While having their own proprietary pieces is essential to maintaining style and the development of distinctive world-building, there are plenty of good reasons for using stock objects where suitable. Over time, development houses build up a substantial library of assets, curated from both in-house and third-party sources.
Thus, asset creation of all types has become big business, something that’s positive for the entire industry, from hobbyists who would otherwise simply be unable to create a competitive game, through to top-tier developers who can use their talents to push boundaries rather than continuously having to repeat the basic groundwork.
The Ultimate Aim of Game Engines
The creation of game engines has been organic. It’s a collaboration spanning thousands of people over decades, as each breakthrough and idea spawns a new iteration of a great idea—from the very beginning when programmers desired toolsets to enable them to step away from repetitious grunge work, through to today’s vibrant environment.
Game engines exist to enable creators to work as part of a team, focused on the creative aspect of inventing a great game that suits them best personally. The asset library is a significant part of that and represents how game engines are as important for graphics and sound creatives as they are for programmers.
If the ultimate aim of game engines is to allow people from all disciplines to come together to free their imagination in order to build the best possible games, then they are definitely on the right path.
As this series on the history of game engines comes to a close, we take a look at what the future might hold for game development and how the once-humble toolkit is at the centre of that.