For the last several articles I’ve focussed on the core engine, Unity, Anvil, Unreal, Frostbite (🤮), but these aren’t the only things making the game.
There are a plethora of other software that are used as industry standard across the development space, we call these ‘Middleware’.
They are key tools, plug-ins, services, that are so good at what they do, no studio is going to invest time into making it themselves when they can simply grab one of these off the shelf.
Sure they cost money to use, often following the same model of x amount of dollars over a certain revenue threshold (plus some extra costs), but it’s worth it.
All of these tools were created once upon a time to solve a certain problem, and then their creators realised everyone else had the same problem and thought they would share.
Some are created and supported by known studios, like Hello Games and Turbo Button, others are by devs who spun out of traditional game development to create this specific product for their industry. Its very more, for the developers, by the developers.
You may think you know nothing about this world, however, often the logos for these software show up as you boot up a game, so some of these names may feel familiar to you, and I’m finally filling in the missing piece as to why they feel familiar.
Let’s dive in to some examples.
Common Middleware
Bink Video
Video files are big, especially when compared to all the other optimised and streamlined assets in your game. Not only do you not want to egregiously increase the size of your game but you also don’t want to pay the licensing fees needed to play standard video formats like .mov.
Bink is the answer to both those issues, it offers a proprietary video codec with insane compression meant for video games. It’s baked into Unreal (Epic bought them) and available to be used in other engines.
Easy Anti-Cheat
Many online games deploy Anti-Cheat to protect their players from cheaters ruining the experience.
There are a few off the shelf tools, Easy Anti-Cheat for example, as well as plenty made in house. These tend to be quite invasive software solutions as they need to be able to reach outside the game and validate that the operating system you are running isn’t doing something else untoward.
Denuvo
Given the concern of piracy in gaming, many games wrap their game within a DRM solution. Denuvo is such software, meant to ensures that the game is being played by the intended person.
These are unpopular tools as they can decrease the performance of a game, Denuvo is infamous for this and is commonly removed from the game after a few weeks of a game launch.
Havoc Physics
My go to touch point for Havoc is Red Faction 2, a game where nearly every single object is destructible. From the ground to the buildings, you can punch a hole in anything, and if you keep punching sometimes it all comes tumbling down.
Havok Physics (Havok has other tools), is a very good physics and collision detection engine used for any game that needs advanced destruction, collision detection, or rag doll mechanics.
All engines have the ability to do this, but when its needed at scale or to do advanced things, the engine will either slow down or not be able to accomodate, forcing you to build it yourself, or you can install Havok.
Houdini
Houdini falls within the category of a ‘Pipeline tool’.
While some tools you insert at the end like Bink to clean things up, or you integrate directly into your engine to expand your vision, like Havok.
A pipeline tool, sits earlier in the piece, before the game engine, and the finished product is then put into the engine for the final product.
This can be your writing pipeline, your concept pipeline, or your asset pipeline.
Houdini is part of the asset pipeline, it specialises in procedural development of models that once created can be inserted into your game engine.
Want to have eighty different types of table? Set up the template in Houdini, let it do its magic and voila you now have eighty tables to choose from in Unreal.
Oodle
Game assets are big, we’ve already covered Bink, which compresses video files, but other assets also can balloon out the size of your game, impacting performance and install size.
Oodle is a suite of compression tools that can help reduce the size of files, assets, network traffic, and provides the ability to uncompress them when you need them super fast.
Speed Tree
I basically wrote this article to talk about SpeedTree. As the name suggests it makes tress, at speed. Perfect for generating endless foliage and vegetation for your open world game.
Speed Tree is so successful there isn’t a major studio not using it, if you’ve played an open world game, like Witcher, Oblivion, No Mans Sky, etc you’ve been walking between their content.
Tracery
Writing dialogue in games is hard, and the bigger your game is the more you need to write out, plan, test, and keep interesting so your player doesn’t disengage.
Tracery is a text-generation tool, use to generate text for your game based off of rule sets. Their website examples some use cases:
Dietrich Squinkifer uses it in Interruption Junction for an endless stream of dialogue.
Mr. Darcy's Dance Challenge uses it for endless insults from Mr. Darcy.
Pippin Barr uses it to generate thoughtful frowns and headscratches in It is as if you were playing chess.
Vivox
Online games, need a way to communicate with other players. For years, older games would cobble together their own solution with varied success, but now that online games are so common place, lots of standard communication middleware has popped up.
Vivox provides voice and chat capabilities for studios to integrate into their games. Fallout 76, Fortnite, Overwatch, and League of Legends all use Vivox and its use in games is as widespread as Speed Tree.
That concludes part 4 of the series, stay tuned for part four next week!
If you have enjoyed this piece or any of my other pieces of writing feel free to share in your channels!
Sources: