Zac Efron packed on 18 pounds of muscle for his role as a troubled Marine in the Nicholas Sparks drama The Lucky One -- no easy feat for the 24-year-old actor.

"By the end of the movie I didn't recognize myself," Efron, who weighed 145 pounds when production began, tells the May issue of Men's Health. "You hear about guys like Christian Bale who dive into it and are really able to transform. I've always wondered if I had the willpower to actually do it. And I'll always have pride around the sense that I can."

Efron -- who first rose to fame as basketball heartthrob Troy Bolton in the High School Musical movies -- has always challenged himself to do more. "I could pick up almost anything. If you put it in front of me, I could always find a way to tackle it," he says of his rigorous training regimen. "I was never a natural at anything, but I could always outwork everybody."

To build muscle, Efron began each day at 5:30 a.m. with a high-protein meal ("a shake and, you know, an eight-egg omelet," he says) followed by a morning workout. By day's end, he aimed to consume 3,500 calories.

Efron also worked with Logan Hood of Epoch Training, and he was soon able to lift more than ever before. "You get this strange sense of power as those weights increase," he tells Men's Health. Efron worked out five days a week, about an hour each time. "If you're eating appropriately and getting enough rest, you don't need to train all day," Hood explains. "All the work's happening when you're outside of the gym."

Efron's new movie, The Lucky One, is in theaters April 20.

沪江娱乐快讯:小帅哥扎克·埃夫隆为了电影《幸运儿》疯狂健身,增重18磅——当然全是壮壮的肌肉啦!不是每个人增重减重都像克里斯蒂安贝尔那样轻轻松松——蝙蝠侠为了艺术忽悠自己的体重可不是一回两回了——扎克接受专业的健身训练,吃超级多的蛋白质,完了以后狂锻炼,每周五天,木有间断。“当电影结束拍摄的时候,我都不认识自己啦!”