A case for building your own tech | Opinion
Oxide Games' co-founder Dan Baker on why game studios should consider creating custom technology
"It’s crazy to make your own engine" "The cost is too much" "We haven’t released a game yet, is custom tech a smart way to spend our time and money right now?"
As a founding member of Oxide Games, I've heard all of these statements phrased in some way or another. When we founded Oxide, one of our founding principles was that we would create our own proprietary engine, Nitrous. Without this dedication to advancing our tech, Ashes of the Singularity wouldn't have been the first game ever to utilize DX12.
Through this experience, and my time in the game industry, I've constantly voiced my belief that creating custom technology is a practice that most game studios should strongly consider if they want to create games that break the mold.
The necessity of custom tech
One of the industry's greatest challenges lies in challenging norms and misconceptions about game engines. Products like Unreal and Unity have simplified game development in many ways, but while many great games have been made with off-the-shelf technology, I can't help but think about what great games were never made. However well-intentioned, there is a habit, when using off-the-shelf technology, to stay in a box that you might not even know existed.
"Studios with custom tech offer a unique opportunity for developers to push the boundaries of their expertise"
Innovation and unique gameplay experiences are sometimes brought about by developers pursuing the fusion of custom tech and game ideas. It can play a pivotal role in creating a successful studio, ensures quality and familiarity, attracts and retains top talent, and can create unique experiences for players.
You can see clear evidence of this phenomenon in the marketplace. Nearly all of the top 20 selling games of 2021 and 2022 use proprietary technology to accomplish an experience that players know they can't find anywhere else.
Attracting top talent is another crucial aspect. Developers are drawn to projects that allow them to leave their mark, solve novel problems, and work with cutting-edge technology. When we hire, we often ask why people chose to work at Oxide, or how they even chose to apply. It's been quite astonishing how many cited the fact we had our own custom tech as a top reason. Studios with custom tech powering their projects offer a unique opportunity for developers to push the boundaries of their expertise and contribute to something truly exceptional. This becomes a virtuous cycle, as the best developers are more likely to create the best games, which, in turn, attract more top talent. Engineers have to want to work on your game. They have to want to work on your tech.
Debunking myths about custom engine development
Common objections to custom tech often revolve around concerns of cost, time, and complexity. However, it's essential to address these objections with facts and dispel some of the myths that surround them.
Firstly, the idea that custom tech is prohibitively expensive is a misconception. While it's true that building a custom engine or other game development technology involves upfront costs, these investments can yield significant long-term savings. The costs associated with licensing off-the-shelf engines can add up over time, especially when a game becomes successful. Plus, the ability to reuse custom technology on future projects can result in substantial savings.
This isn't to say there isn't a major drawback with custom tech. It takes a few years of engineering to get a basic engine operational, and often the lifecycle of game development and new studio founding require results sooner than is economical. Oxide solved this problem by shipping a simpler game first, which gave us a solid tech base to build from. Other studios have solved this problem by using [a commercial] engine, but slowly replacing or heavily customizing it with their own tech.
The recent news with both Unity and Epic Games has shattered the assumption that engine technology access is going to remain inexpensive and perpetual. It is becoming increasingly apparent the engine license model offered by Unity and Unreal is unsustainable. For Unity, we've seen large changes in royalty fees, while Epic has changed its royalty structure. The years of subsidizing engines to gain market share are over. In the absence of new competition, engine license prices will only continue to go up.
EA and Activision are more profitable businesses as the margins for making games appear to be far greater than the margins for making the tech to make the games. I could foresee a titanic shift from the engine makers to stop focusing on licensing their tech and instead focus on making games with it. In this business model, they undercut themselves by offering their engine for too cheap. I’m not yet ready to predict this will happen, but there’s a strong argument to be made to guard your tech and only license it to a small number of games that give you strong royalties.
This presents a dilemma for studios dependent on external technology. Even if the current terms of engine license fees are reasonable, is there a future where the terms reach the point where you can no longer afford to upgrade your technology? Or could the holder of the tech simply refuse to license their tech at all? Or maybe the royalty rates are high enough that studios find themselves barely profitable. This might have seemed absurd a year ago but as we’ve seen lately we can't really assume anything is safe.
The economic aspect of customization
When evaluating the economic aspect of custom technology, it's crucial to consider the long-term benefits. Yes, building a custom engine or technology may have higher upfront costs compared to licensing an existing engine, but these costs should be seen as an investment in a studio's future.
Custom tech offers the potential for substantial savings on subsequent projects. Some of the advantages add up over time. Off-the-shelf engines often come with a plethora of features and tools that a project may never use. This bloat can slow down development and increase resource requirements. It's amazing how much productivity you can gain if you strip this down.
For example, our Nitrous Engine compiles very quickly. The engine compiles in less than 30 seconds. The engine code is clean and modular, so we can implement features in the engine or fix a bug in around a tenth of the time it would take in an off-the-shelf engine. Not only can we do a clean build of Ara in less than 2 minutes, but our debug version of the Ara and Nitrous is so fast that we can still run at 30 fps in full debug.
As many developers know, we usually spend the majority of our time tweaking and debugging, not writing new code. So being able to run debug builds and compile quickly is critical. Sometimes this can be hundreds of times per day. Our asset cooking process is minutes. This contrasts with off-the-shelf technology games I've worked on where a few hours every day was spent just fetching assets or compiling. Our developers are saving hours every single day.
This is a force-multiplying effect. The idea is that with good planning, intelligence, and execution you can take a small force and make it far more powerful. And it is this effect that is so crucial to making custom technology work. But there is a cautionary tale here: Making your own version of Unreal or Unity will add little value. You have to build something specific to the types of games you make and the way you want to work. You have to build something that makes your game better.
The process of developing custom tech is one that will cost you both significant time and money, but it is a very worthwhile project for studios that are just starting out with a few devs in a garage, or even large companies with greater resources to expend between projects.
Technical challenges and solutions
Another angle to approach the question for custom tech is to take a look at what the most difficult problems for your game are and ask the simple question: Would off-the-shelf technology have helped us? When I look at the challenges for Ara: History Untold, the answer is quite clearly no.
We have several big challenges with Ara: History Untold. The first big challenge is that Ara is a game about the world. And the world is big, really big. We committed early on to a living world, which is to say we wanted an imaginary, alternative world to spring to life. But handling a world of the scale we imagined was beyond the capabilities of technology we knew about. The world is so large that it's quite common to have over 100,000 renderable objects on screen.
"You have to build something specific to the types of games you make and the way you want to work"
We needed an engine architecture that could handle this amount of data, in the ways that we needed it to be handled. There's really no way to accomplish this without being heavily multi-threaded, with a great deal of care put into tuning. Nitrous is purpose-built for heavy threading, and I can safely say that Ara would have been impossible in its current form without this ability.
In the early days of D3D12, we spent a great deal of time with Microsoft helping ensure the next generation of technology could be performant. The result of this collaboration is that Nitrous Engine takes full advantage of what modern CPUs have to offer.
In addition to the problem of dealing with a large amount of data, a second huge challenge is that Ara is a procedural game. When I take a look at all the work we did on the procedural part of the game, it's quickly apparent that there isn't any middleware or engine feature or anything that would have helped us. It's all specific to our game experience, and it turns out that we quickly had to become experts at procedural generation.
These technical challenges are just a glimpse of what custom technology can address. It can empower developers to create games that push the boundaries of what's possible, offering players experiences that are truly memorable.
The future of game development
As we look to the future of game development, it's clear that off-the-shelf solutions will continue to play a significant role. These engines provide a valuable entry point for smaller studios and indie developers, enabling them to bring their creative visions to life without the need for extensive technical expertise.
However, it's essential to stress that licensed engines do not eliminate the need for technical investment. Even when using off-the-shelf engines, developers often find themselves customizing and extending these engines to meet their specific requirements. This process is essentially the development of custom technology within the limiting confines of an existing engine.
I foresee a shift towards smaller, well-optimized components and custom solutions. Game development will become more modular, allowing developers to mix and match the best tools for their specific needs. This approach will foster innovation and flexibility while maintaining the benefits of off-the-shelf engines in terms of accessibility and rapid development.
Custom tech empowers developers to innovate, save costs in the long run, and overcome technical challenges that off-the-shelf solutions cannot address adequately.
Sign up for the GI Daily here to get the biggest news straight to your inbox