多年來,遊戲程式設計師可以仰賴電腦處理器愈來愈快的速度,來達到更好的遊戲效能表現。遊戲程式根本不必重寫─只要硬體昇級,遊戲表現就跟著昇級。

但是這種好日子可能來日無多了。因為處理器的過熱問題,使得晶片廠開始採用多核心設計晶片,雖然個別處理器的運算速度較低,但多處理器同時運作可以大幅加效能。只是對於單線設計的程式而言,使用多核心晶片,並不能讓它跑得比較快。

對於遊戲軟體工程師而言,似乎該就多核心晶片的運算模式,重新調整其程式架構了。Intel(INTC-US)上週推出了新的軟體開發工具,以協助工程師更改程式。

重要的遊戲作品通常都花費數年的時間研發,這表示,在2005年與雙核心晶片同時上市的遊戲,程式碼並無法配合雙核心運算技術。不過,它們通常都以發布 patch (補釘)的方式,來讓遊戲程式適應多核心晶片。

不過,發 patch畢竟只是治標不治本的方式。現在有愈來愈多遊戲研發公司的新作品,都以多核心運算為前提來編寫程式碼。但對於工程師們來說,要重新習慣另一種編寫邏輯,則是個大工程。

「當2005年第一代雙核心晶片推出時,我們的表現只堪稱D-,」 Intel遊戲平台部總監 Randy Stude,為其公司的平行運算發展打了個評分,「但是現在,我會說有C+的表現。」

多核心運算所呈現的效能有如唾手可得的豐美果實,不過晶片大廠 Intel與 AMD(AMD-US)仍花費許多時間與預算,大力鼓吹遊戲研發商採用這個技術。AMD 甚至還在去年舉辦了「編碼設計大賽(coding competition) 」,試著引起廠商興趣。

Jon Peddie市調公司分析師 Ted Pollak 表示,用 Patch 讓程式與多核心相容是一回事,以多核心運算為大前提設計程式又是另外一回事,兩者的效能還是有相當差距。現在已有25家遊戲研發公司,採用多核心運算方式,如著名的戰略遊戲 《Supreme Commander》就是其中之一。

有的公司一次只開發一款遊戲,修改程式還不算太困難;但有的公司是自行研發核心引擎,並套用在多款不同作品上。再加上目前絕大多數的電腦遊戲都是區域連線或萬人連線模式,這些遊戲已經廣為散布到玩家群中,相形之下,許多公司也就不願費心去做程式上的變更。

為了協助麻煩又複雜的程式碼更改作業,有些公司就推出了可以輕鬆轉換的軟體。如 RapidMind,它推出的產品,讓工程師只要用原本的寫法,就可達成資料平行運算的目的。PeakStream也有類似的產品,讓遊戲研發人員輕鬆適應多核心的世界。

在 Intel已經推出 4核心晶片,AMD 也將於下半年跟進的狀況下,不出多久,雙核心晶片應該就會在家用電腦普及。況且連 PS3與Xbox都已採用多核心晶片,看來,遊戲研發商們最好還是趕快適應多核心運算技術,才能保持競爭力。

arrow
arrow
    全站熱搜

    咖啡王子 發表在 痞客邦 留言(0) 人氣()