Warframe’s New Spaceships Are Powered By Portals
Adding fully-manned spaceships and space combat to a gargantuan online game like Warframe isn’t rocket science. It’s portal science. It’s also game development wizardry that makes my brain hurt.
Warframe’s upcoming “Empyrean” update will include space combat that allows players to do things like run around inside their ship while somebody else is piloting and even leap out and steal other players’ chrome-coated intergalactic hotrods. It’s an ambitious addition to a game that started out as a co-op PVE shooter starring space ninjas who, yes, could pull off impressive acrobatic feats, but who could not leap into outer space and soar around like god damn Gundams.
However, while other space games like Elite Dangerous and (especially) Star Citizen fetishise fancy but oftentimes impractical simulations of outer space, Warframe’s variation on the idea is rooted in some absolutely wild technical trickery.
In an illuminating interview with PC Gamer, Warframe game director Steve Sinclair explained that he actually wanted to have these features in the game from the get-go when he first envisioned it over a decade ago, but technical limitations made it unfeasible. It would’ve been a huge hassle to maths together a physics engine that between players doing their own thing and ships hurtling through space at absurd speeds would’ve accounted for so many moving parts.
To realise Sinclair’s vision, players needed to be able to freely explore inside the ship without being tossed around like popcorn kernels in a microwave every time the ship jostled slightly as it hurtled through space. Ultimately, the idea wound up on the cutting room floor.
Now, years later, it’s about to be in the game thanks to portal technology. The ships that players are inside of, Sinclair explained, do not actually move. Rather, they exist in their own “little level” off to the side and are attached to separate ship models in a separate 32-square-kilometre space where everybody’s blasting each other with lasers and “yee-hawing” through asteroids. So you’re not actually inside the ship you’re piloting. You’re in a little box, like kids imagining they’re space captains.
The difference between you and those children aside from their innate capacity to hope and see the good in people, I mean is that you have a portal window into the universe you’re playing in. “Portal rendering,” as it’s called, works pretty similarly to portals in Valve’s 2007 game Portal, creating a window attached to another location in a 3D space and presenting a view from an entirely different perspective. This is how you will see into Warframe’s space map while existing entirely outside it. Your cockpit is basically just a big portal.
Ships, to be clear, do not move. “It’s fixed in space and we’re just moving the backdrop perspective,” said Sinclair. So it’s basically exactly like the Planet Express ship in Futurama, except Sinclair and company did it for real. Well, in a real video game.
On Twitter, Sinclair posted a diagram of all this, if you want clarity and/or to confuse yourself even more.
‘Trick’ of our space battles is an ancient rendering technique twisted. You see your ship interior but windows are a portal attached to the RailJack entity itself in the combat zone which itself looks into the art space ‘skybox’. Board the Obelisk, you see space from its entity. pic.twitter.com/4LRkdJBdYj
— Steve Sinclair (@sj_sinclair) July 8, 2018
But it doesn’t stop there! Warframe still has to account for players leaping out into space and flying around. That, said Sinclair, does occur in an isolated pocket of the 32-kilometer map, but when players do that, they’ll only seeing models of the ships that their friends are running around inside, not the ships’ interiors. Which aren’t there.
There’s a common and incorrect perception on the internet that game developers are “lazy” when they are, in fact, insane miracle wizards who will bend the rules of time and space just so people can run around inside their toy spaceships. All that in mind, I wonder how Warframe’s developers feel about bird necks.