got rid of SFML dependency