23. The Legend of Bagger Vance (2000)
Will Smith’s most embarrassing performance is the model definition of a "Magic Negro." In the sports movie, he plays the Hindu text Bhagavad Gita, wrapped in the body of a cornpone black caddy, dispensing down-home knowledge to Matt Damon’s washed-up, shell-shocked golf legend. Sure, he’s charming as always, but... he’s playing a Magic Negro.
22. Men in Black 3 (2012)
Smith once again returns to his role of Agent J, going back in time to pair up with a younger version of Tommy Lee Jones’s Agent K (played here by an uncanny Josh Brolin) to defeat renegade aliens and all that. If there is any role in Will Smith’s filmography that screams "I’m doing it for the money!" it’s this one.
21. After Earth (2013)
This futuristic whatzit stars Smith as the fearless, emotionless General Cypher Raige (his actual name!), stuck on a humanity-free Earth, guiding his son (played by his real son Jaden, who really needs some acting lessons) in making sure they get off this godforsaken place. The actor has himself to blame for this one; while directed by M. Night Shyamalan, Smith is credited for the story.