Percy Jackson – Diebe im Olymp
Ab diesem Zeitpunkt beschloss er, Schauspieler zu werden, brach sein Studium ab und besuchte die Queen Margaret Drama School. Durch die Unterstützung von Robert Carlyle hatte er seinen ersten professionellen Bühnenauftritt in dem Theaterstück "The Silver Darlings" von Neil M. Gunn und 1996 sein Filmdebüt in "Trainspotting – Neue Helden" von Danny Boyle. Seitdem war er in diversen Spielfilmproduktionen zu sehen. Von 2005 bis 2007 war er in der Rolle des römischen Centurio "Lucius Vorenus" Hauptdarsteller der Fernsehserie "Rom". 2010 spielte er in dem Film "Percy Jackson – Diebe im Olymp" den Meeresgott Poseidon.