Henry Cavill has revealed that he lost out on the role of James Bond because of his weight.

In an interview with Men’s Health, the Man of Steel star recalled an audition for Casino Royale in the mid-00s which required him to walk out of the bathroom wearing just a towel.

“I probably could have prepared better,” Cavill said. “I remember the director, Martin Campbell, saying, ‘Looking a little chubby there, Henry.’ I didn’t know how to train or diet. And I’m glad Martin said something, because I respond well to truth. It helps me get better.”

At the time, the actor was just 23 and had appeared in small roles in Midsomer Murders and 2002’s The Count of Monte Cristo before losing out to Daniel Craig.

Henry Cavill in Man of Steel. Photograph: Allstar/Warner Bros/Sportsphoto Ltd/Allstar

Cavill also lost out on leads in Twilight and Tristan + Isolde but after securing a breakout role on TV’s The Tudors, he scored the lead in Immortals, which required him to go on a strict diet for six months. “It was my first experience working on a movie and having my shirt off for most of the damn time,” he said. “It’s very emotionally taxing. When you add the lack of food and the pressure on top of that, it’s tough.”

He went on to become Superman in Man of Steel and later Batman v Superman and his latest role has him star as Geralt in the Netflix adaptation of The Witcher which premieres in December. “I’m representing important characters here,” he said. “I don’t want to be a dumpy Geralt or a fat Superman.”