史蒂文·斯皮爾伯格曾一度接手這個項目,但他發現自己的時間早已排滿,根本騰不出手來。伊斯特伍德在找編劇時讀到這個劇本,覺得它很像柯克·道格拉斯1962年主演的電影《孤獨勇者》。當伊斯特伍德表示對有興趣執導《完美的世界》時,華納兄弟公司立刻動手將版權收入囊中。
與《孤獨勇者》類似,這個故事以60年代為背景,表現主人公遭到警方的追捕。斯皮爾伯格以為伊斯特伍德會扮演在逃亡途中綁架了一名7歲男孩的巴切·海因斯。然而,生平第一次伊斯特伍德學會了說,“我太老了。”他選擇隻擔任導演,把表演的重任交給另一位實力相當的明星。
製片人馬克·約翰遜已經找好了凱文·科斯特納,問題是伊斯特伍德能否願意與憑《與狼共舞》在他之前獲得奧斯卡獎的科斯特納合作。實際上,伊斯特伍德擔心的反倒是對方願不願意。“我開始就在想,'這好像並不屬於他常演的那一類角色。”他說,“但是,也許做演員的都想突破一下自己。”科斯特納很想演,不過他更希望拉上伊斯特伍德一道演,這樣該片的票房就等於加上雙保險。科斯特納吃不準伊斯特伍德能否願意演男二號——負責追捕海因斯的警官瑞德.力Ⅱ內特。伊斯特伍德認為加內特的角色沒有什麼厚度,而且,在劇本裏他與逃犯隻有一次簡短的碰麵。於是,科斯特納建議約翰·李·漢科克重新塑造這個角色,“當然,科斯特納這樣做的目的也是想讓克林特給他更多的戲份,”製片人馬克·約翰遜說。
修改後的劇本通過一個背景故事加強了伊斯特伍德與科斯特納之間的聯係,但這個秘密直到高潮到來時才揭開。原來,瑞德.力Ⅱ內特曾在巴切·海因斯年輕時逮捕過他,隨後又說服法官不要重罰他,以為這樣就可以讓他避免受到壞影響,但沒想到自己的仁慈卻造就了海因斯的犯罪人生。
這個改動使加內特的角色豐滿起來,伊斯特伍德同意出演這個配角,這也是他從1969年的《血染雪山堡》和《長征萬寶山》以來第一次沒在一部他出演的電影裏拿最高的片酬,他把機會讓給了科斯特納。然而,在拍攝前的準備會上,伊斯特伍德與科斯特納在工作方法上還是產生了分歧。眾所周知,伊斯特伍德是以拍攝速度快而聞名的,而科斯特納則是一個完美主義者。經過協商,伊斯特伍德破天荒地同意在做每個決定前先征求科斯特納的意見。
一旦這兩位明星決定合作,其他的演員也就很快就位。勞拉·鄧恩將扮演協助瑞德.力Ⅱ內特工作的犯罪學家,屬於在伊斯特伍德電影中多次出現的角色類型。出生在猶他州的新人T.J.洛瑟爾飾演被綁架的男孩,他有著一雙從憐憫中看得出堅強的眼睛。
盡管伊斯特伍德與科斯特納表麵上達成了默契,然而,隨著影片在得克薩斯州開拍,外景地上空還是充滿了火藥味。原因一部分出在毫無表演經驗的洛瑟爾需要大量時間接受輔導,另外就是因為科斯特納的“斤斤計較”,他幾乎每一秒鍾都會在現場提出他的要求。記者引用伊斯特伍德的話說,“科斯特納永遠都在抱怨別人沒有做到位。”科斯特納是帶著自己的導演想法來到拍攝現場的,他希望這些想法能夠得到尊重、得到實施,哪怕造成拍攝超期,可是,超期恰恰是伊斯特伍德最不允許發生的事情。
在拍一場戲時,科斯特納嫌迎麵走來的一個群眾演員跟他打招呼的時機不對,要求重拍,但伊斯特伍德卻認為沒有必要。一氣之下,科斯特納甩手離開了現場。
伊斯特伍德環顧四周,發現科斯特納的替身仍穿著戲裝。於是,他用替身拍完了這場戲。接著,他又安排這名替身拍了幾場隻需要背影的戲。
科斯特納平靜下來後重又回到現場,眼前發生的這一切多少令他驚呆了。“怎麼回事?”他問道。
“沒怎麼。我們在拍戲。”伊斯特伍德說。
“你什麼意思?”“我用替身替你拍完了這幾場戲。”“你不能這麼做,我是說,你沒有必要這麼做。”“為什麼不行?達利和塞梅爾付錢要我拍電影。如果你不在,我就會給替身拍特寫。因為我要拍完這部電影。”“你不會這麼幹的,你真的會嗎?”“你也看到了。這個家夥將拍完整部電影。這是我要做的事情,我在這裏不是陪任何人玩的。”聽了這話,科斯特納哭笑不得,他連說了幾句“好吧”便回到攝影機前。“從那以後,我們的合作就順暢多了,”伊斯特伍德後來告訴記者說。