神聖2:1080p/技術採訪

我決定討論一些具有1080p視頻遊戲經驗的遊戲機開發人員。目標很簡單:討論所謂的“全高清”分辨率伴隨著更深層次的挑戰。

Sacred 2程序員Tobias Berghoff直接在遊戲的PS3版本的1080p渲染器上工作,並對該過程有一系列令人興奮的見解。他工作的項目很有趣,這在Dipeout HD中很有趣,而與1080p兼容的PS3 Title-It-IT是一個Mulit平台遊戲:SACRED 2可用於PC,PlayStation 3和Xbox 360。這兩個控制台版本都支持該遊戲。最大分辨率為1920x1080。在我們有之前分析在每個受支持的模式下創建了遊戲的性能。有趣的是,確定該遊戲以720p和1080p的配置文件進行內部運行,僅在標準分辨率下以低估的遊戲形式輸出較低的HD分辨率。

之後,閱讀了《無遺物訪談:100%的技術討論》 - 就像我們在Digital Foundry喜歡的那樣。

數字鑄造:鑑於許多人仍然使用SDTV:選擇1080p的想法是什麼。您難道沒有感覺遊戲有點過時嗎?

Tobias Berghoff:老實說,這是一個非常漸進的過程。當06年末開始Xbox版本的作品時,720p的性能目標是2xMSAA。 PC版本在圖形上非常高級,並且非常渴望性能。此外,我們沒有該平台的經驗,所以一點克制是一個好主意。

PS3版本的開發始於07年中,我們認為這是一種實驗。由於該行業,所有與PS3開發有關的恐怖故事,因此我們並不確信它會起作用。我們尚未宣布整整一年的時間,因此,如果該平台要成為一個挑戰,我們仍然可以輕鬆地取消它。

正如我們所期望的那樣,兩個平台上的性能被證明是有問題的。我們從PC版本中繼承了一個前向渲染器,該渲染器在360上產生了100 -200ms的FrameTime,在PS3上產生了約100ms。經過一些無用的嘗試來優化這一點,Xbox團隊決定延期渲染器,這確保了第一個主要的表現突破。我們還不到那兒,但是360版本肯定能夠在720p中渲染。

如果沒有PS3版本,我們可能會在這一點上停止。借助延遲的渲染器,當圖片中有足夠的光源時,我們的幀速率也進入了100ms+區域。問題是在延期通行證中使用的像素著色器。這使得整個光計算一次運行,這使我們能夠以多達12個圓頂燈(可以擁有八個陰影地圖)以及太陽及其陰影圖的伽瑪損壞的照明。索尼工程師曾經說過:“它產生了非常漂亮的圖片,但可能是我見過的最難的像素著色器”。問題是動態確定哪些光源可以在哪些像素上遺漏。 Xenos能夠很好地處理它,RSX是Geforce 7,因此不是分支的朋友。

因為我是唯一負責PS3上渲染的人,所以這給了我一些頭痛。解決方案是使用SPU來確定哪些光源會影響哪些像素,然後將遞延的傳道分成64個像素的塊,以便可以立即繪製所有被相同光接觸的塊

。因此,與對實際光源數量進行優化的像素著色器一起,PS3在Xbox之前遠遠足夠,足以使1080p移入可能的區域。

我認為這實際上是我們說:“哦!時尚!”並試圖使它成為可能。我們以前在1080p中有一些測試渲染,並且非常確切地知道,我們所有α檢驗的草和葉子的圖形質量將是巨大的。這確實是“白天和黑夜”之類的區別。

一段時間以來,PS3 1080p似乎還提供了Xbox,直到Xbox Boss Programmen的Stephan Hodes(Xbox Boss Programmen)才寫下了上述Xbox的系統的瘋狂版本,這兩個版本都非常精確地帶來了。相同的級別(**)。

那是“高科技的”嗎?也許。我們尚未達到目標性能目標,並且在PS3上 - 這是我所知道的唯一版本可以談論它 - 幾乎完全是一個CPU問題。平台上的渲染絕對比CPU端代碼更快,這有點浪費。但是,我應該指出的是,至少在PS3上 - 以30fps的2xmsaa獲得720p並不比到達1080p特別容易。因此,它不會幫助將開發工作從渲染器轉移到遊戲代碼。數字鑄造:

您能概述720p和1080p渲染之間的主要區別嗎?Tobias Berghoff

:它是2.25倍的像素數。這確實是全部。在PS3上,您的渲染目標越來越大,這使您付出了代價,並可能增加紋理流的壓力。對於我們來說,這確實使我前面提到的SPU PROCOSESS進行了複雜。我們必須經過整個深度緩衝區,因此必須將其從VRAM複製到RAM系統。如果您在720p中渲染,則需要3.5MB緩衝區。在1080p中,它是8MB,這是很多額外的內存。

因此,我將內存減半,將RSX複製到系統RAM中,並用SPU處理並用右側重複此過程。您真正不想要的是GPU是空閒的。因此,在SPU工作的同時,RSX也必須工作。為此,我們需要類似的中斷系統,它允許SPE告訴RSX複製深度緩衝區的後半部分。一切都不參與PPU側渲染代碼,也不知道RSX實際上在做什麼。因此,您會做一些非常有趣的事情來節省一些MBS RAM。

在360中,情況有些不同,因為您的渲染目標存儲在EDRAM中(額外的10MB超快速公羊連接到GPU)。因此,目標越大,瓷磚和解決方案就越多(從EDRAM複製到RAM系統的過程)。如果您確實需要在某個地方作為紋理的整個目標,那麼您當然會遇到相同的內存問題。

主要問題是像素處理。分辨率越高,擁有快速像素著色器的重要性越重要,ROP使用的記憶帶騎行越多(渲染輸出單元)。但是,如果您將1080p30遊戲與720P60遊戲進行比較,則遊戲代碼的差異不在渲染器中。

*受SCEE Phyreengine團隊的好人的工作啟發。

Related Posts