The Scottish actor turns 40 next month and said that the time has come for him to stop accepting roles that require him to strip off.
He told the Metro newspaper: 'I'm getting older and the actresses stay younger. I don't want to become Clint Eastwood, where his love interests seem 50 years younger than him.
'You never want female co-stars to feel like you're taking advantage of the situation. Anyhow, sex scenes are terribly exposing and rarely of any use in learning about character.'
But he added that he doesn’t feel bad about getting naked in earlier films such as Trainspotting and Velvet Goldmine.
'It's all about life. We're naked at the end of the day and we're sometimes naked in the middle of the day - if we're lucky. It may seem like I'm obsessed with sex but it's actually the opposite,' he said.