A look behind the scenes at the visual effects of two key sequences in the film, with beloFX.
A dramatic fight scene in Len Wiseman’s John Wick spin-off Ballerina showcases assassin Eve Macarro’s (Ana de Armas) skills in an ice club. It’s a spectacular stunt-filled sequence, which also includes a large array of invisible visual effects by beloFX. The VFX studio carried out extensive set extensions, ice enhancement, lighting and screen projections, weapon replacement, fight augmentation and more for the sequence.
The ice club was filmed at the then unopened Budapest Zoo Biodome. “There were a lot of sharp angles and concrete everywhere, so the tricky part was to give the idea that this place was really, really cold,” observes beloFX visual effects supervisor Giovanni Casadei, who worked with production visual effects supervisor Paul Linden on Ballerina. “We had to add a ton of dry ice and cold breath, and halation around all the lights to make it feel like the air was heavy.”

“Also,” says Casadei, “I think this sequence had the most amount of roto I have ever briefed in my life. We basically had to roto every character and every set piece, since we were having to do so much. For example, we would be replacing most of the stairs and concrete pillars with CG ice, and there were people in the front and in the back. We went brute force and we said, ‘Okay, let’s just roto everything’, which allowed the client to ask for all kinds of shots.”
For that solid ice work on pillars and stairs, beloFX built a procedural setup in Houdini. “For the lighting,” details Casadei, “I always avoided having a direct light. We always played it as backlit so that it would glow with all the nice neon colors around. If you only have a direct light, the ice starts to become very flat and you have this very basic specular quality that can then make it look like opaque plastic.”
The integration between CG surfaces and rotoscoped characters was aided with the addition of dry ice simulations (some practical dry ice and smoke was utilized on set). “It did mean we had to body track everybody so they interacted with the dry ice,” notes Casadei. “We used some dummy proxy geo for most people and then custom models for our main characters.”
Also placed behind the characters thanks to the extensive rotoscoping were a mixture of generated LED screens, projections and neon light fixtures. “The whole roof was another Houdini setup,” states Casadei. “We extracted geometry from the Lidar, and then we used masks to bring in waves and patterns choreographed to the client’s taste.

In this ice bar sequence, and in other scenes, beloFX was also responsible for crafting gun muzzle flashes. Eve smuggles in a plastic gun that uses rubber bullets to avoid metal detection. That meant her weapon did not exhibit a traditional-looking muzzle flash, as Casadei explains.
“We went through many, many iterations where we experimented with heat haze and different colors. We ended up doing something a little bit more neutral with less smoke and a heat distortion around it. The client was also keen to see some tracers with the bullets bouncing around, and for that we had to enhance a lot of impacts on stunt performers.”
beloFX built a library of source imagery for the muzzle flashes—“My YouTube algorithm is very, very messed up because I’ve been looking for weapons for a year!” says Casadei. “We built up this library with different angles that we could use in comp. It also included related effects for the bullet casing being ejected, too.”
Later, Eve’s car is t-boned on a New York street after she makes an exit from a hit job in an alleyway. The crash is revealed after a long boom up above the street that then booms back down to reveal the car being pushed and Eve under fire. Here, beloFX stitched together two separate plates, not shot motion-control. “They didn’t totally match,” notes Casadei. “We tried doing some reprojections, but there was so much parallax shift that we went CG with the environment and camera.”

A building filmed in Prague featured on the left of frame was re-created by the beloFX team, as were city environments and vehicles for the background. “Originally, the brief wasn’t to have so many cars in the street,” advises Casadei. “But then they felt it was a little convenient that Eve would be caught by surprise and not see the car that collects her. So we choreographed in all the cars.”
Re-times were also a part of the sequence for the moment that Eve’s is fired upon. “The bad guy opens the door and starts shooting, but they wanted to delay his action,” says Casadei. “That meant we also had to go CG in some parts for the car door. Luckily we were able to re-time the guy and reproject him, so we didn’t go CG on him, but the car is partially CG.”
Other debris and mess such as breaking glass, and smoke, were added to the cars in CG. “We did that in CG because it was really, really tricky to object track the practical vehicles with precision because of all the vibrations, which meant we couldn’t really achieve that with the proxy geo,” says Casadei. “Then we also used the idea of some real puddles in the street to add a few effects passes of water splashing here and there. We tried to time it with the real puddles on the street, so it would be more sporadic and random. We had to do two different simulations for front and back wheels, because of course the ones in the back should make the most smoke, and the wheels in the front go slower with a little less smoke.”

At one point, Eve gets the better of her assailant and dispatches him with an axe weapon. “For that shot,” recounts Casadei, “Ana was holding just a handle. She mimed the hit but they were a little too distant from each other and the timing wasn’t quite right. So we ended up doing a CG arm and re-time the action of the stuntman for a faster snapback, along with added in the blood spurts.”
For blood hits throughout beloFX’s sequences, Casadei preferred using 2D elements, including ones that he orchestrated at his own home. “I’m always trying to shoot it for real. I made some fake blood and it worked well, so that’s what we used.”






