"I am attracted to dynamic moments in peoples lives, and I suppose trauma," says actor James McAvoy. It's especially been true the last couple of years, as he'd consistently been drawn to characters who are dealing with some sort of emotional and psychological trauma. In Filth, based on the novel by Irvine Welsh, McAvoy plays Detective Sergeant Bruce Robertson, a man who manipulates and hallucinates his way through a bid to secure a promotion and win back his wife and daughter. He's also currently reprising his role as Charles Xavier in X-Men: Days of Future Past, playing the young professor during a time when he's struggling with his powers of telepathy.