Marvel is very keen on keeping the look, feel, and continuity of all of their comic book movies consistent, which means that cast changes are unacceptable. As much as possible, if you played one character in this movie, you have to play it again in this other movie, and the next movie before that.
This makes Terrence Howard’s role as James “Rhodey” Rhodes in the first Iron Man film, as he was replaced by Don Cheadle in the second film with no clear reason. Howard has now broken the silence on the move, stating that the studio has always had Cheadle in mind for the role:
“Don [Cheadle] and Robert [Downey Jr.] get along well,” said Howard of the casting process for the first film. “Initially, they wanted Don for that role, but my agent pushed me in. So I never had any beef with Don about it.”
On the subject of his deal, Howard explained: “[I was paid] about $4.5m [for the first film],” said Howard. “The second time, [the studio] said ‘We think the movie will be successful with or without you. So, instead of the $8m that we said we were gonna pay you, we’re going to let you come back for a million dollars.’
“We did a three-picture deal already, [but] I forgot, I didn’t know it wasn’t a mutually binding contract; it was only beneficial for them and they could bring me back or not. They can honour it or not.”
Source: Sway In The Morning