Crossovers are a big part of superhero movies these days, with all sorts of caped heroes popping up in each other’s movies in recent years, so perhaps it should be no surprise that new genre entry Shazam! tries to sneak in a cameo for a certain Man of Steel in its closing moments.

The end result, though, ends up a little more complicated than anyone expected when they were making the movie.

“The great thing about this movie was that there wasn't any mandate that was like, 'Oh you have to include this, or you can't include this, or you have to set up these future movies or anything,'” director David F Sandberg told RadioTimes.com.

“It was just a standalone movie, and then we were welcome to include as many references and things as we wanted to. Which, as a fan, it was fun to just geek out with them.”

And for this crucial scene, they geeked out considerably.

In a callback to an earlier part of the film, superhero-fan Freddy (Jack Dylan Grazer) finally has his request to have Shazam! (Zachary Levi, playing the transformed version of his foster brother Billy) turn up and join him for lunch, impressing all the other kids at school – but he’s not alone.

“I invited a friend along, if that’s OK,” Levi’s hero says – and as John Williams’ familiar Superman theme plays, we see the Last Son of Krypton enter the cafeteria as well, holding a tray and ready to join Freddy for a lunch he’ll never forget.

“That was the big pay-off,” Sandberg explained.

“Because you know, Freddy is a huge Superman fan and we keep setting up like, 'Oh, Shazam's gonna show up in the end.' And we have the bullies joke about, 'Oh, and Superman's gonna serve us dessert?'

“So yeah, that was always there as something we wanted to do.”

Asher Angel as Billy Batson and Jack Dylan Grazer as Freddy Freeman, with a bullet that bounced off Superman, in Shazam! (WB)

It’s a sweet scene that reminds audiences of the similarities between Shazam and Superman (once so noted it was the subject of a copyright lawsuit), while tying the new film into the DC Extended Universe – but not as firmly as it once might have.

You see, while the figure is unquestionably Superman, he’s not played by Henry Cavill. Plans to include the actor (who has played the character since 2013, and has been rumoured to be exiting the role) in the scene were scrapped after scheduling conflicts.

“Originally we had written that Henry actually sat down and they had a little talk with the kids, and then it ended,” Sandberg revealed.

“But yeah, we couldn't make it work when we were up there shooting in Toronto. We were at that school location, we only had a certain time or whatever. Which was very disappointing at first, because it's like, 'Argh - but we were supposed to have Superman!'"

More like this

However, in the end Sandberg says their solution – getting a stand-in to wear the suit and never show his face – worked surprisingly well, adding a comic beat to proceedings that wasn’t in the original script.

“What we did was just cut out before you even see his face, and it actually turned out really funny,” Sandberg said.

“We tried that in the edit: 'Let's just cut it out right there, after Freddy's reaction'. It makes you laugh, because it's so sudden. In some ways I'm glad it worked out that way.”

So there you have it: a massive superhero cameo in a massive superhero film, in a scene which they didn’t even need the actual actor playing the superhero (if he still is) to appear.

Told you it was complicated.


Shazam! is in UK cinemas now