Since then, he has gone on to play other science fiction roles, such as the alien supervillain Brainiac on the Superman -inspired series Smallville , the omnisexual time traveller Captain John Hart in British science-fiction show Torchwood and terrorist Barnabas Greeley in Sci fi 's Caprica .