When Guerilla Games released the trailer for Burning Shores, the new expansion for Horizon Forbidden West, developers from other studios quickly took notice of a moment that might otherwise have gone unremarked upon:
“that hug at 0:45 is a technical flex like YOU HAVE NO IDEA,” wrote Strange Scaffold head Xalavier Nelson Jr. He was echoed in the replies by numerous other developers and fans, all of whom were struck by the realization of why we so rarely see two characters hugging one another in games. Turns out, it’s very, very hard for developers to make this happen while making it look normal and believable. And yet, Guerrilla has been making Aloy warmly hug her friends since Zero Dawn.
So how is Guerilla pulling off this technical feat? I spoke with Guerilla studio animation director Richard Oud, who admitted he was pleasantly surprised that anyone was noticing how impressive this was. Oud says that because Aloy is a hugger, Guerrilla’s gotten used to the extreme challenge required to get all these hugs to happen…and recently, it’s made some technical strides in the field of video game hugs.
WARNING: While this article’s text does not contain spoilers, the video content in this article shows cutscenes from the endings of Horizon: Forbidden West and the Burning Shores DLC. Watch at your own risk!
Solving for Hug
The challenges facing Guerilla – and other developers – begin with the motion capture [mocap] suits used to record motion and facial expressions, which have become a standard sight in the games industry. Mocap suits work through sensors dotted all over them, which software is able to follow and translate into recorded movement. But when two actors wearing mocap suits hug, their bodies are pressed against one another…and so are the sensors. This results in fully half of the sensors on each person simply vanishing from the view of the software.
Oud explains this means a human has to manually “solve” the movement data that’s been captured, meaning that the software has to know where a sensor should be at any given moment. In this case, they have to solve for every missing sensor over the entire time that the hug lasts. It’s a time-consuming task that Oud says machine learning may actually make faster in the future, but right now either has to be done by hand in-house or outsourced to another studio. Animators can’t touch the scene until this is done.
Once that’s taken care of, there’s a second problem: motion capture suits are basically just a fancy second skin, but the characters hugging in the game are generally wearing clothes.
“If you look at things like the armor, for example, that Aloy is using… all that kind of stuff is not to be taken into account with the motion capture,” he says. “So even with the solved data, you only have the base. So you still need to go in there and start addressing everything towards the fact that somebody’s actually reaching around a piece of armor, for example. So the whole animation after that point needs to be addressed so it doesn’t intersect with the cloth that that person is wearing that they’re hugging.”
If you’ve ever played the Horizon games, you can imagine this isn’t a simple task. Aloy and her friends all wear elaborate, detailed outfits, often with lots of decorations or other elements sticking out of them, and Aloy herself has multiple different outfits that all must be accounted for.
The Hair Tube Physics Problem
Even after that, the troubles aren’t over. Normally, as Oud mentioned, Horizon’s mocap actors wear head mounts to track their facial expressions and give the animators data to work from. But you can’t wear a giant head mount when you’re hugging, so animators have to fully animate the characters’ expressions by hand. Oud tells me that means all three different endings of Burning Shores were fully keyframe animated because of this.
Once the animators get their hands on the scene, still more problems arise. Oud explains that one problem is that scenes involving hugs actually need their animations to run at a higher frame rate, otherwise they end up looking ridiculous or wrong.
“You really want to feel that connection between people, and that means that we have to actually run those animations on a higher frame rate or a higher position rate, or else you will basically get a little bit of jitter,” Oud says. “[T]he engine actually interpolates between frames. Usually we actually animate at 30 frames per second, but we are running our game at 60 or 120 frames per second where those missing frames are usually just being calculated by the PlayStation in this case.
“And if we have too low of a refresh rate on it, things actually can start shaking, for example. And that basically means that it doesn’t look correct because then you still have a little bit of intersection or it doesn’t feel like they’re actually reaching and grabbing somebody steadily. So we actually have to up the compression on those types of animations to be super precise so we don’t have the jitter and they’re basically playing at their full maximum power that the machine can handle at that point.”
You really want to feel that connection between people, and that means that we have to run those animations on a higher frame rate.Finally, there’s the gorgeous, flowing, red elephant in the room: Aloy’s hair.
Oud explains that in Horizon: Zero Dawn and Forbidden West, Guerrilla was working with a hair setup where the team essentially had eight different hair “poses” to accommodate the majority of Aloy’s moves and movement speeds. Her hair is made up of a bunch of “collision capsules,” which for non-animators you can imagine as a ton of tubes that would attract to one of the set poses, then release once the pose was done, making it look like fairly natural hair in motion.
But for Burning Shores, her hair got some upgrades. The team wanted to push Aloy’s hair further, but their ideas for doing so only came up near the end of the project, when much of the gameplay was done. However, because cinematics are normally done toward the end of a project, they were able to implement Aloy’s new hair features in cutscenes like a certain hug between Seyka and Aloy.
“The way Zero Dawn and Forbidden West were working was that collision, the collision of the hair was kind of locked, right?” Oud explains. “There was no way to actually override it unless we actually had an outfit change where that hair was posed into a new pose so it actually wasn’t intersecting with her armor.”
To solve this issue, Guerrilla introduced what Oud calls a “movable collider.” Oud explains it to me this way: if Aloy’s hair is made up of a bunch of small tubes, those tubes have a physics to them where if they come into contact with another tube, they just bounce off one another. But they aren’t movable in and of themselves. So the team introduced a new collision capsule that responds specifically to them, but is only available in the cinematic, and wrapped it around Seyka’s arm. The result was a hug where the hair appears to move naturally as the arm comes through it, rather than the arm sitting awkwardly on top or clipping weirdly through.
“So in this case, when Seyka reaches around and starts going through the hair right there, we actually animate a capsule like a movable collider,” he says. “We actually animate it at the same speed and the same position as the arm is actually going, which responds to the hair and it actually looks like her arm is moving away the hair to make room for the arm to hug around. I think that’s as simple as I can put it, hopefully.”
This change was made possible thanks to Jolt Physics, an open source physics engine that Guerrilla switched to for Forbidden West. Among its many other advantages, it allows there to be more objects with actual physics in a given scene, such as allowing for Aloy’s numerous hair strands.
“A static world is awesome, but once things actually start to move and actually have AI and they have reactions with a physics object, the more you have of that, the more calculation a computer application in this case needs to do, and the less you can basically put on screen at a certain point,” Oud says. “Which is also one of the reasons why we actually went for just PS5 only in this case. We were just able to put a lot more visual fidelity and a lot more objects on screen than we could have done with the PS4.”
Engineering Intimacy
Problems like the ones Oud describes impact not just hugs, but just about any kind of intimate interaction characters have. It’s one of the reasons why many games don’t often show the simple act of one character handing an object to another character: the rules, physics, and animations involved with getting a 3D object to detach from one character and attach to another, all while looking smooth and natural, is a “technical nightmare,” Oud says.
Kissing runs into similar problems as this and hugs, or basically any time two characters need to touch and then move in tandem in a way that feels like something normal people would do. It’s cheaper – financially, technically, and in terms of time – to not do these things at all, or to hide such interactions behind camera tricks or off-screen in the case of handing off items.
“But we’re a little bit more ambitious sometimes, you know what I mean? So that’s when we do one and see how far we can push those boundaries or how much we can actually have characters interact with each other, which is also the reason why we let Aloy hug so much maybe.”
Oud and I are both reminded of a similar discussion that cropped up in the gaming community over a year ago, where developers surprised many by explaining how difficult it was to do something as simple as make a door that opens and closes normally. Oud notes that things like hugs and doors are not just hard to animate generally, but grow even more challenging in the games space where players must also be able to pause the game, move the camera around, or do other things while the activity is taking place. “You have to get it right or else people just won’t believe it and won’t buy into it.”
But, he adds, Guerrilla finds such interactions – especially intimate ones, like hugs – important for the kinds of human stories they want to tell. After all, humans beings hug. Some hug often. It would feel strange for the studio’s characters to not be allowed to do that. He’s especially delighted when audiences – whether consisting of other developers or regular players – notice and call out when those interactions are done well. But, he adds, success is for players not to notice them at all. It’s supposed to feel natural.
“If we just bail out of those hugs or those intimate moments, the story just doesn’t come across,” Oud says. “So we have to find a way to actually do these things and still make sure the emotion and the connection is delivered to the player and they don’t really have to think about it. But as long as [the players] feel it, then I’m already blessed that we actually hit our target.”
Rebekah Valentine is a news reporter for IGN. You can find her on Twitter @duckvalentine.