Michael Shannon has signed on to play villain General Zod in 'Superman: Man of Steel'.

The 'Boardwalk Empire' star was chosen by director Zack Snyder because he is a "powerful" actor, making him "perfect" for the role opposite Henry Cavill as the titular hero and Amy Adams as journalist Lois Lane.

He said in a statement: "Zod is not only one of Superman's most formidable enemies, but one of the most significant because he has insights into Superman that others don't.

"Michael is a powerful actor who can project both the intelligence and the malice of the character, making him perfect for the role."

Terence Stamp previously played Zod in 'Superman II', and Michael is thought to have stepped in after Viggo Mortensen was unable to sign up to the part because of scheduling conflicts.

Henry recently revealed he had begun training for the iconic role, and was finding it "really hard" to get used to.

He said: "I've done about a month so far of foundation training. Really hard stuff, to get my body used to the real stuff, which is coming up soon."