Thomas Puha from Umbra talks about the high-level visibility solution used in Destiny, Call of Duty: Advanced Warfare, Quantum Break, The Witcher: Wild Hunt, World of Tanks and Rime.
Perhaps Umbra is not a well-known company among the indie game development crowd, but if you talk to the guys from Bungie, CDProject Red, Activision, Unity or Epic you will definitely find a lot of fans of this technology. Every big budget AAA game from any well-known publisher uses Umbra solution. We’ve talked with the company’s marketing manager Thomas Puha (who has his own Wikipedia page) and discussed this product in detail. It seems that now, even indies have a chance to get a taste of Umbra.
Functions and Engine Integration
Umbra is a high-level visibility solution. It optimizes rendering by making sure that what you see (what the camera sees in the frame) is being rendered. Anything behind the objects will not be rendered.
Our technology is easily integrated into other engines. If you use Unity you’re already using us! We also have a plug-in for Unreal Engine 4. You can get it from GitHub. For custom engines you need to integrate our solution. It’s pretty simple.
There are two components. There’s the optimizer that you integrate into the tool that you use to build the game (your world integration tool or whatever you call it). You integrate it there and you get the data and then that information is used at once to do the queries to tell what is visible and what is not. It may sound complicated, but the whole thing is pretty easy to set up.
Recently we’ve released a debugger that works with Umbra SDK. It’s aimed for the content creators and programmers who have to interact with our technology when they make games. While working on this product we were using a lot of feedback we get from the Umbra users. The whole debugging process is going to be easy and transparent.
Developers can export their content (their level) and then they can play around with that content in the debugger and see how our software interacts with it. Users can see things like memory use and how many milliseconds of the frame they spend on Umbra. It’s just something that helps the development team understand our technology better when something goes wrong.
It’s really useful because you can evaluate Umbra with it so you don’t have to integrate our software.
Another big new feature of Umbra is cloud-service. You see, Umbra has two parts. There’s an offline part where we generate the data. The data generation is relatively heavy, so for big developers like Bungie and Infinity Ward they have separate computation facilities. It’s not a problem though. Smaller teams can just upload their data into the cloud and basically use as much of the cloud processing power as they want. They get the same speed and functionality and save a lot of money on infrastructure.
The nice thing is that a lot of the setting up, in terms of integration and features, is already done in the cloud. It’s all about accessibility and usability.
We have a license, that you buy to use our software. For Call of Duty Ghosts Activision buys the license for the game, including all the DLC and everything. We also want to be more accessible for smaller teams. Obviously everyone has different budgets and that’s a challenge for a small middleware company like ours with twelve people because we can’t give stuff away for free like Epic does.
Our technology is very specific, but the cloud allows us to work on almost subscription like basis. You can sign up with us for let’s say two months. We’re working out the pricing on that. It’s very cheap so if you’re just a five person team with a very small budget you can still get a good benefit out of Umbra.
The Value of Middleware
If you look at the past 10-15 years, there was a lot of “do it yourself” mentality in video games. You go to a developer and say, “oh yeah that’s good tech, we can do that in 3 weeks.” Right now the attitude has changed. Almost everybody is using Unity or Unreal. I mean there’s more people who use these engines than there are people who build everything themselves! Nobody can do that anymore. It’s pointless.
I mean we’ve spent 8 years on our technology. It’s optimized every week and updated every week. It’s being molded and shaped by the feedback we get from developers. Most teams look at it and say that it’s good stuff, and that they shouldn’t spend more time on that.
Developing games is so complex so you have to focus on something. You might focus on rendering or you might focus on gameplay. You can’t focus on everything. Everybody uses audio middleware, we’re rendering middleware, and other people use networking middleware and so on.
There’s no need to do everything yourself. The thing is, now everybody sees the value of middleware.