Actor Bradley Cooper had to gain weight naturally, without supplements, to portray a Navy Seal in Clint Eastwood's new movie, because he feared his past struggles with addiction would come back to haunt him if he started popping pills.

The American Hustle star plays real-life hero Chris Kyle in the much-anticipated new movie American Sniper and had to gain 30 pounds (13.6 kilograms) for the role.

Cooper has been sober since 2004 and did not want to risk his health while training, but admits he was concerned he would not be able to put on muscle without drugs.

He tells Vanity Fair magazine, "I did it naturally because I've been sober for 10 years and didn't want to do anything.

"I had a realistic conversation: 'Can I do this in three months naturally? Can I gain 30 pounds of f**king muscle?' I didn't know if I would be able to do it or not. Thank God, luckily, my f**king body reacted fast."