Robert Pattinson is one of the finest actors of his generation.