這個部份是這兩天和Nukeduke兄在討論到XBOX Live Arcade的時候,想到的一個問題。
他指出XBOX Live Arcade可以簡易、快速地開發低成本的遊戲,並且備有線上交易系統,所以可以快速地釋出低成本的title。
畫面水準則在XBOX初代前後。然後PS3在這方面則是有疑問的;但是我的觀點則是覺得,PS3沒有理由這方面困難、交易系統也是存在的。
XBOX Live Arcade的開發簡單與否這點不討論,我們從PS3開發到底難還是簡單來討論吧。
這點其實討論起來可以蠻有趣的,我們來點案例對比試試看吧:鐵拳5DR 和 FF11。
我們知道,鐵拳5DR是只有重新寫作程式、數位內容部份沒有修改就移植完畢的”小品作”。
http://www.famitsu.com/interview/article/2007/02/14/668,1171444185,67084,0,0.html
從這篇可以知道,包含新設的一些遊戲模式延伸等等,基本上鐵拳5DR的PS3版只做了programming的部份,包含基本程式、繪圖shader的微調,除了加入self shadow之外都維持PS2的水準,沒有作任何3D Model上的調整。(staff根本沒有美術人員)
所以等於就只有鐵拳5DR的高解析版(1080p + AA),只是拜現有的Arcade版(記憶體較大之故所以content品質也較高)的高品質content所賜,只是小改程式沒有調整content就帶來了品質的提昇。
這樣的工作量到底多大呢?
project立案是2006年十月中,但是實際發售(FTP上載?)則是2006年12月27日,只花了兩個半月。
接著,輪到FF11的部份。
FF11目前仍然維持以PS2硬體/模擬器執行的方式硬上。
http://www.watch.impress.co.jp/game/docs/20070117/ff11_16.htm
各硬體(PS2、PS3、PC、XBOX360)執行狀況比對。
http://www.watch.impress.co.jp/game/docs/20070418/ff11int2.htm
訪談
他們的說法上,雖說360版靠Windows現存資源移植沒有困難,但是PS3卻得從頭作….?
要利用PS3的性能的話還得大幅修改model,所以得花五年到六年?
這兩邊的思維根本完全不同,從前面鐵拳5DR的狀況來看,PS3的FF11大可用PC和360的content,甚至大可用PS2的content作re-rendering即可,程式的部份從Namco的經驗來看顯然根本就沒有想像中的大(當初Namco的人也表示比原來想像的要簡單),程式部份的debug來說網路遊戲或許是比較複雜,但是其實網路遊戲的獲利點根本就不在大規模改善content品質的部份(那邊應該是交給開發中的新作才對),既然有PC版現成的content、程式寫作上其實也不如想像中麻煩,也沒有鐵拳有面對當初PS3對大型電玩搖桿的支援度不佳的問題,那真的不知道PS3版重新寫作方面到底被評估成什麼樣子的難度。
以Namco來說,在Content完全不需要重新準備的狀況下,以現有人力熟悉該遊戲本身平衡調整等know-how的狀況下,以少量的人力在短時間內就移植了完整的遊戲到PS3上,其實堆積起來的know-how顯然相當多,或者說再做第二套的時候必然可以縮短一些時間。如果把這些資訊轉移給其他小組,那麼很多PS2的title其實可以在極短的時間內快速地移植到PS3上。
當然這個部份是因為PS3目前的相容是以PS2現有硬體來執行之故,而已PS3本身的硬體來執行(軟體模擬)的話,則又牽涉到GS結構特性的問題(eDRAM作為texture cache代用、multi-pass特多,造成對現行GPU直接執行上的額外頻寬overhead顯著),對RSX執行要模擬應該會帶來相當多的麻煩….所以PS3目前眾所皆知地是以加上GS的方式,作i/p轉換後以480p輸出,並且日後有可能提供upscale到高解析度的功能。但是實話是說,即使是純數位傳輸,單純的圖像放大,自然是不如以更高解析度render過的方式推出會得到更多的改善。所以,其實某些PS2的佳作遊戲如果考慮以類似鐵拳5DR的方式作小規模負擔的重製的話,在PS3上的表現改善應該會非常顯著,初期PS3遊戲的數量也可能會大幅增加。
(當然這其實就會變成在質疑目前PS3模擬功能就是了….但是FF11的部份又顯得頗為極端)
而其實有某些title就是用類似的方式在製作,如「野球魂4」與「Winner Post 2007」的PS2/PS3版雙release,就可以看到一些content共用的痕跡,以及風險分攤的設計。當然這也與PS3初期數量較少有關,不然廠商其實就不必負擔兩個平台分別debug的成本了。其實這段想要提出的問題是:實際上和當初PS2相比,PS3的programming本身並不困難,如果不是要鑽牛角尖發揮效能、目的是要做出符合自己期望的遊戲的話,其實PS3的開發困難度問題是很小的,而且這點其實在過去就已經提及過,也就是說現在遊戲開發成本的問題,其實廠商的心態要付的責任比較大。
XBOX Live Arcade的小本遊戲開發友善度高(即XNA),其實癥結並不是在程式寫作困難度上,而是在小腹案可動用的數位內容成本、授權費用、以及非傳統通路等部份上的配套措施,也就是說其實主要是在獲利模式的部份而已(當然MS在開發環境上給人”傳統、好用”的刻板印象也是一個著力點所在,雖然實際上大家都知道根本沒差,而且XNA的.NET Framework實質上會嚴重限制程式性能),SONY既然曾經表達過支持Homebrew的言論,其實應該是要針對這些狀況去適當地釋出更友善的機制與獲利模式上的突破,而不是放任狀況繼續惡化。
話說Eji大看過巴哈TVGAME討論版的這個討論串了吧:
“我論MGS4 FF13發售阻力已經不只是PS3銷售量了”
小弟也在其中做小小的錯誤糾正,不過卻有位叫WaffenSS的仁兄回我,
可其內容卻和我牛頭不對馬嘴…,但是其內容和Cell有關:
Xenon是單精度下115.2Gflops
不過OS佔用其中1顆CPU的1個Thread的約3%時間,以及32MB主記憶體.
(或者說是佔用整體Xenon的1%時間)
CELL則是單精度下218 Gflops(7顆SPU一起,PPE負責協調工作)
根據Beyond3D上開發者的說法
1SPU保留給OS,佔用52 MB主記憶體和32MB繪圖記憶體.
且還有另1顆SPU沒有100%的優先使用權,
OS會在它需要時隨時拿去用….Orz
(為啥OS要用這麼多資源?? 1顆還不夠XD)
實際上遊戲可用的SPU是5.x 顆
通常由於PPE滿載….有開發者會拿其中一顆SPU做工作分配.
以免其他SPU閒置
(最新的Edge函式庫也有提供類似的功能,讓1顆SPU專門分配工作與前置處理)
目前遊戲實務上真正用在浮點運算的可能只有4.x顆SPU
現在的CELL可用在遊戲物理運算上的潛力和Xenon可能沒有理論上差那麼多了.
—-
以上是WaffenSS兄台的內文,看完之後小弟我也生同感,
就拿Eji大舉的”Ageia的PhsyX library for PS3″的例子,
看樣子PPE的滿載代給PS3不少的效能衝擊…
>話說Eji大看過巴哈TVGAME討論版的這個討論串了吧:
>”我論MGS4 FF13發售阻力已經不只是PS3銷售量了”
>小弟也在其中做小小的錯誤糾正,不過卻有位叫WaffenSS的仁兄回我,
>可其內容卻和我牛頭不對馬嘴…,但是其內容和Cell有關:
>Xenon是單精度下115.2Gflops
>不過OS佔用其中1顆CPU的1個Thread的約3%時間,以及32MB主記憶體.
>(或者說是佔用整體Xenon的1%時間)
這段其實是在說360的OS做得”看起來”不錯,但是其實代價之一就是那個側面選單跳出來的時候很不順。XD
>CELL則是單精度下218 Gflops(7顆SPU一起,PPE負責協調工作)
>根據Beyond3D上開發者的說法
>1SPU保留給OS,佔用52 MB主記憶體和32MB繪圖記憶體.
>且還有另1顆SPU沒有100%的優先使用權,
>OS會在它需要時隨時拿去用….Orz
>(為啥OS要用這麼多資源?? 1顆還不夠XD)
>實際上遊戲可用的SPU是5.x 顆
>通常由於PPE滿載….有開發者會拿其中一顆SPU做工作分配.
>以免其他SPU閒置
>(最新的Edge函式庫也有提供類似的功能,讓1顆SPU專門分配工作與前置處理)
即時訊息不會吃太多資源,但是如果有即時語音、影像通訊呢?
那就有可能用到了吧。
他們的確不知道未來可以做到多少,所以事先保留起來。
但是實際上未來實做結束後就可以知道到底有多大的空間,64MB + 32MB都是reserve的,實際上OS進遊戲之後並不會完全吃這麼大的空間,現在已經慢慢地放回來了,比方說之前就已經把OS的容量降到56MB了,1.7又降到52MB,應該還有辦法再降;瀏覽器吃40MB~90MB也嫌太大,應該還有辦法壓縮才是,比方說KDE的KHTML就吃不到10MB(剩下的是高解析度frame rendering需要的容量,1080p是17MB左右),這個主要與語法解析引擎有關,做得好的既簡潔又有效率。Opera吃得更小,但是功能顯然也沒缺。
話說那個前置處理的部份,其實可以換個觀點來想….
你做好物理轉換、back-face culling之後,傳給RSX的只剩下Transform(物件模型和經過物理運算後得到的動量)而已,這個RSX的VS就可以做得很順暢;但是XBOX360的話就得全部交由C1做才行,傳過去的資料量其實就得要比較大些(所以C1的VS真的比RSX快很多,不過要做的工作量本來就比較大,經過Back-face culling之後,差距其實就沒想像中的大)。
照這作法,你如果讓GPU處理GS的話,那GS就勢必得處理受到物理破壞的部份、切割後破壞的模型,而且這個破壞還無法與遊戲內邏輯關聯(因為沒有memory coherency,無法確定同筆資料在兩個不同的processing unit上都是up-to-date的),只有eye-candy的效果,所以在360上GS只能拿來強化視覺效果,比方說Displacement Mapping。
為什麼PPU上得要有自己的記憶體來存完整的場景資料,也是與PCI/PCI-Express都沒有辦法與CPU做到memory coherency有關,所以PPU要算完之後傳回結果去更新主記憶體內的場景資料,除非支援HTX/Torrenza或是CSI之類與CPU之間彼此有cache coherency協定的介面才行。而SPE與PPE彼此之間是有cache coherency協定的,透過FlexIO之間彼此互連的CELL也有這個特性。
所以如果論in-game physics的話,XBOX360就是只有CPU 來與CELL的SPE之間比較。Havok 4.5在CELL上可以比4.0快5~10倍,但是在360上4.5能夠比4.0快這麼多嗎?這點可以去問問看。當年Ageia說XBOX360上沒辦法做流體模擬,PS3可以,我覺得這不是沒有理由的。
最後,有些人在講說”遊戲做的物理即使複雜百倍也看不出來”,這點是有疑問的,因為基本上碰撞物理其實是可以線性成長的,因為在良好的資料結構下的碰撞物理本身非常地有區域性,不會真的非常需要random-access,所以兩倍的性能真的會反應到兩倍的物件量;反而是煙幕之類的eye-candy反正只要蓋上去就好了,只需要fillrate,那邊的物理反而意義不大。(所以才會說eye-candy有就好沒有也罷,當然它很明顯沒錯,但是不會影響遊戲性)
>目前遊戲實務上真正用在浮點運算的可能只有4.x顆SPU
>現在的CELL可用在遊戲物理運算上的潛力和Xenon可能沒有理論上差那麼多了.
還是有落差啦,比方說SPE彼此之間有辦法透過EIB交換資料,360則是靠share-L2來作。
>以上是WaffenSS兄台的內文,看完之後小弟我也生同感,
>就拿Eji大舉的”Ageia的PhsyX library for PS3″的例子,
>看樣子PPE的滿載代給PS3不少的效能衝擊…
well,PPE永遠都是滿載的,PPE使用了多少不會造成衝擊;但是SPE的使用量會隨著軟體的發展慢慢提高,以前只有兩三件事情能交給SPE,之後越來越多….PPE的工作量以前是管理工作加SPE無法處理的東西,越來越接近只需要管理工作就好,這也就是CELL的潛能所在。
>well,PPE永遠都是滿載的,PPE使用了多少不會造成衝擊;
>但是SPE的使用量會隨著軟體的發展慢慢提高,
>以前只有兩三件事情能交給SPE,
>之後越來越多….PPE的工作量以前是管理工作加SPE無法處理的東西,
>越來越接近只需要管理工作就好,這也就是CELL的潛能所在。
我想他們所說的”滿載”對我們來說就是”PPE做了SPE的事”,
所以對Cell不了解的人就會說”PPE做差了”或者”PPE應該有兩個”等等…
話說當時小弟我也產生”PPE要有兩個”的想法,
可我和那些人”一個PPE控制四個SPE”的想法不同,
http://www.watch.impress.co.jp/…0331/ps3_207.htm
這張圖就是讓我想有兩個PPE的原因,
因為當中沒有一個單元是Hypervisior/OS專用,
以後為了將八個SPE都可以應用在更多事情上,
多個PPE或將Cell當作Coprocessor(1PPE+8SPE),
我想這是八個SPE能夠發揮的幾個方法…,
但在PS3上的話成本與設計的考量,
這個念頭就…
>我想他們所說的”滿載”對我們來說就是”PPE做了SPE的事”,
>所以對Cell不了解的人就會說”PPE做差了”或者”PPE應該有兩個”等等…
>話說當時小弟我也產生”PPE要有兩個”的想法,
>可我和那些人”一個PPE控制四個SPE”的想法不同,
>http://www.watch.impress.co.jp/…0331/ps3_207.htm
這張圖久啦。
而且它的比例都是畫爽的,實際上根本沒有東西限制說什麼工作一定只能分配給這些東西,它只是舉例而已啊。
比方說:
http://forum.beyond3d.com/…ad.php?t=39605&page=5
It shows 4 bars at the top of the screen. The finder seems to think it shows GTHD is currently using 3 SPEs, but it may be 2 PPE threads + 2 SPEs.
GTHD Concept目前推測只用到4個執行緒,可能是兩個PPE+兩個SPE。
>這張圖就是讓我想有兩個PPE的原因,
>因為當中沒有一個單元是Hypervisior/OS專用,
>以後為了將八個SPE都可以應用在更多事情上,
>多個PPE或將Cell當作Coprocessor(1PPE+8SPE),
>我想這是八個SPE能夠發揮的幾個方法…,
>但在PS3上的話成本與設計的考量,
>這個念頭就…
不,CELL的成本與考量都是出自於80/20 rule,這個是CELL整個結構的共通觀念,不是PS3本身的觀念。畢竟CELL根本不只PS3用,所以當然沒有PS3自己才有的問題。
80/20 rule指的是說,程式碼20%長度的code,佔掉程式碼80%的實際執行時間,所以要加速這20%的code。
PS3總共有10個執行緒,就是為了把本來只有在PPE上執行的工作,搬到SPE上,所以剛好有8個SPE、2個PPE執行緒,PS3唯一面對的問題只有變成6顆的SPE,而這是一開始CELL設計的時候就在考慮的問題了。(曾經有訪談指出它們只打算做6個SPE,後來久多決定做8個)
此外,GameFrame的主CPU,其實就可以說是這堆CELL裡面的強力CPU;CELL就是GameFrame的co-processor了。
———-
補充一點東西:
http://forum.beyond3d.com/showthread.php?t=40458
RSX: Vertex input limited? *FKATCT
http://forum.beyond3d.com/…?p=967602&postcount=4
Now..I can’t see how RSX, if used in the right way, should be so limited at vertex processing: in HS we easily render 2-2.5 MTriangles per frame at 30 fps without being VS limited and without making any use of CELL to speed up vertex shading and I know for sure that being more clever we could even go faster..(just using the GPU)
(by nAo)
——
According to DeanoC blog, the game can calculate AI for 2180 enemy soldiers.
http://blog.deanoc.com/?p=84
Slightly more now, we hit that limit… so I managed to pack the data more (each grunts state is down to 48 bytes from 64) so our current high is ~2400. In theory we could get near 3K if we need to (we should now have the RAM to go that high, just haven’t needed to test it yet).
(by DeanoC)
http://forum.beyond3d.com/…=899873&postcount=127
他們的AI系統全塞進一個SPE了。
咦-_-?
Eji大回的文的內容怎麼在我上完課吃完飯回來就變了…
—-
>這張圖久啦。
>而且它的比例都是畫爽的,
>實際上根本沒有東西限制說什麼工作一定只能分配給這些東西,
>它只是舉例而已啊。
呃~~看樣子Eji大誤會我的意思了…
小弟我早就知道圖中的比例只是舉個例子,
我最主要是焦點在能用八個SPE,
也就是能擁有大量的運算量,
當初剛聽到PS3的Cell(當時還以為只有PS3要用)要用一個SPE當備援,
然後就在這圖出來之前,又說一個SPE又用在Hypervisior/OS上,
所以小弟我就產生兩個PPE的念頭,這圖出現後小弟我就更在想這件事了…
故小弟當時的想法是期望Cell是個運算量很大的汎用CPU,
而沒有想過它有其它的用途,但經Eji大的開解,
讓小弟知道STI(又或阿健桑)想得比我還多還遠XD
—-
>GameFrame的主CPU
還是Cell嗎?又或者是Power架構的CPU?
—-
>(by nAo)
RSX可以做到6千萬~7.5千萬的Triangle/s,這是RSX的極限了嗎?
現在PSEdge已可用SPE來做頂點運算,不知一個SPE能達到多少的Triangle/s?
—-
>GTHD Concept目前推測只用到4個執行緒,可能是兩個PPE+兩個SPE。
>他們的AI系統全塞進一個SPE了。
看樣子前一年的我對SPE的運算量太過低估了XD
>>GameFrame的主CPU
>還是Cell嗎?又或者是Power架構的CPU?
就MainFrame啊。
過去是專用的CPU,不過現在準備轉向到Power6系列。Power6的10進位浮點運算器、強大的虛擬系統就是為了MainFrame需求而設計的。
GameFrame指的是有CELL當附加運算器的MainFrame,計畫用來當MMO-gaming的Server,透過CELL來強化分散運算能力,包括可能會在Server上作某種程度的物理預處理。
—-
SPE的工作量是可以達到非常龐大的…. 🙂
>>(by nAo)
>RSX可以做到6千萬~7.5千萬的Triangle/s,這是RSX的極限了嗎?
>現在PSEdge已可用SPE來做頂點運算,不知一個SPE能達到多少的Triangle/s?
http://www.4gamer.net/….05/20070514130145_24.jpg
這個是2900XT在1280*720解析度下達到2MTriangles/Frame的圖,
看樣子是在60fps下,是RSX的兩倍,以後還會增加吧?
不知比起Xenos的狀況是如何?
http://www.4gamer.net/….05/20070516211406_42.gif
http://www.4gamer.net/….05/20070516211406_45.gif
http://www.4gamer.net/….05/20070516211406_51.gif
http://www.4gamer.net/….05/20070516211406_54.gif
看樣子目前2900XT在DX9很吃香,但在DX10就…
不曉得以後有較新的Driver會不會有大變革…
http://pc.watch.impress.co.jp/…7/0515/nvidia.htm
話說NVIDIA還說它只能跟8800GTS相提並論,
不曉得那256個SP是如何算出來的?
ATI的結構是用1個array共用一個thread的方式做的….R600和C1/Xenos是一樣的。
所以VS和PS的比例靠的是time sharing來分,就是總共有多少thread(64個),裡面有多少是VS、多少是PS thread的方式,然後最小單位是每4個clock作一次切換。
所以照理來說一個cycle內的VS最少還是16個shader…. (或者0個啦XD)
ATI的結構慣例上比較重視數學運算性能,Texture從R420以來就沒有強化,但shader已經強化很多了。
NVIDIA的話則是所有能力都有全面性的強化,包含數學運算用的shader和texture,所以開AF的時候落差馬上就出來了。
NVIDIA的SP是double clock(正確地說是host的2.12倍),所以可以算256個SP沒錯。
當初R600還在傳64個4+1D的時候,就有提到會變成320 vs 256的狀況,如何讓R600發揮320般的效益,才是真正的關鍵。
>當初R600還在傳64個4+1D的時候,
>就有提到會變成320 vs 256的狀況,
>如何讓R600發揮320般的效益,
>才是真正的關鍵。
看樣子這場戰爭的高潮有得等囉…
(會不會R600的320個SP發揮時,NVIDIA已出G90了XD)
>>RSX可以做到6千萬~7.5千萬的Triangle/s,這是RSX的極限了嗎?
這應該是經過culling後的值了吧?
話說SCE已有SPE運算Vertex的資料了(我之前居然會跳過這裡XD),
http://www.watch.impress.co.jp/…0070316/pe42.htm
如果將culled掉的60%加回來的話,
那一個SPE能有0.8M多Triangles per frame x 60fps x 100/40,
共120M多Triangle/s,SPE還真不能小覷呢~~.
RSX的極限最高顯然是TSE的極限,250M/s,這是最佳狀況的總量,大概是一堆互連的扇形三角形XD
剩下的還有vertex object、buffering之類的效率問題,總之150~200M/s左右應該就上不去了,就算拿SPE算也不可能超過這個量,所以簡單講CELL絕對可以滿足RSX吞吐需求。
NVIDIA在G84以前的TSE都是ATI的1/2速度,包含G80和RSX都是,所以這邊沒得商量。
我自己看R600 VLIW是覺得很難發揮….五個指令槽要完全不一樣,mul/mad/min/max/sqrt,這五個指令怎樣才能在只算1D的情況下沒有相依性地並列在一起?難啊。
>RSX的極限最高顯然是TSE的極限,
>250M/s,這是最佳狀況的總量,
>大概是一堆互連的扇形三角形XD
都忘了TSE的存在…XD
如果說RSX本身餵不滿自己,看樣子兩個SPE就滿了…
(我相信一個SPE可達125MTriangle/s,不culling的話…)
>NVIDIA在G84以前的TSE都是ATI的1/2速度,
>包含G80和RSX都是,所以這邊沒得商量。
話說ATi為何都要將TSE設的這麼高,
就算R600榨乾,culling後也不見得能達到自己的TSE的四分之一…
>我自己看R600 VLIW是覺得很難發揮….五個指令槽要完全不一樣,
>mul/mad/min/max/sqrt,
>這五個指令怎樣才能在只算1D的情況下沒有相依性地並列在一起?難啊。
這意思是我這句話要改嗎?
(會不會R600的320個SP發揮時,NVIDIA已出G90了XD)
變成
(會不會R600的320個SP發揮或還沒發揮時,NVIDIA已出G90了XD)
嗯~~還是等2900XTX出來在看看唄XD
> 話說ATi為何都要將TSE設的這麼高,
> 就算R600榨乾,culling後也不見得能達到自己的TSE的四分之一…
這倒不一定,XBOX360早期的title多得是可以把TSE操滿的多邊形量,這方面R600不該連自己的前輩都比不上。
只是這些title用多邊形用得好像都不是很有效率,比方說PGR3號稱500M/s看起來還沒有PGR2漂亮、Dead Rising也有400M/s以上,才有那個殭屍數量,反而Lost Planet只剩300M/s。
然而Pixel Shader的效果卻也是反比地增加。以現在來說,看來C1的VS很強、很輕易地就能用出來沒錯,但是剩下的Pxiel Shader資源並不是很夠,所以只好回去找eDRAM之類的加速手段,並且再適度地調整多邊形數量。Lost Planet的多邊形量幾乎有1/2都用在特效上需要產生的部份。
>只是這些title用多邊形用得好像都不是很有效率,
>比方說PGR3號稱500M/s看起來還沒有PGR2漂亮、Dead Rising也有400M/s以上,
>才有那個殭屍數量,反而Lost Planet只剩300M/s。
哇~~!這些是culling後的值嗎(看樣子真嚇人XD)?
話說TSE的預設值通常很難塞滿,在PS2時代,
PS2的GS TSE也才75MTriangle/s,
EE的Triangle生產量culling後能有其五分之一就很不錯了…
(話說小弟我到現在都還不知PS2哪款遊戲的Triangle用得最多…)
不過於DX10後的時代,GS比起VS還會需要多大的TSE呢?
>然而Pixel Shader的效果卻也是反比地增加。
>以現在來說,看來C1的VS很強、很輕易地就能用出來沒錯,
>但是剩下的Pxiel Shader資源並不是很夠,
>所以只好回去找eDRAM之類的加速手段,
>並且再適度地調整多邊形數量。
>Lost Planet的多邊形量幾乎有1/2都用在特效上需要產生的部份。
意思是XBOX360若要在畫面上有所改進,
會盡量將用在Triangle的運算量都賠在特效上,
所以說到頭來還是得向PS資源不夠低頭,
看樣子PS3和XBOX360的繪圖核心資源(指VS和PS)真是半斤八兩XD
> 哇~~!這些是culling後的值嗎(看樣子真嚇人XD)?
應該是沒culling過的值….
> 話說TSE的預設值通常很難塞滿,在PS2時代,
> PS2的GS TSE也才75MTriangle/s,
> EE的Triangle生產量culling後能有其五分之一就很不錯了…
> (話說小弟我到現在都還不知PS2哪款遊戲的Triangle用得最多…)
> 不過於DX10後的時代,GS比起VS還會需要多大的TSE呢?
其實說起來….GS的TSE還是0.5poly/cycle啊。(GS是150MHz)
ATI的TSE好像從R4x0開始就是1poly/cycle了。
DX10有不少機會提高TSE負擔啊,比方說Displacement Mapping現在也開始有遊戲用了….以後應該會越來越多?不過我覺得還是有限啦。
“GS比起VS”?
GS是多切出更多polygon、不過基本上是個並列的東西,沒有取代作用喔?
> 意思是XBOX360若要在畫面上有所改進,
> 會盡量將用在Triangle的運算量都賠在特效上,
> 所以說到頭來還是得向PS資源不夠低頭,
> 看樣子PS3和XBOX360的繪圖核心資源(指VS和PS)真是半斤八兩XD
well…. 因為分支能力和eDRAM的關係,C1通常都會占一點便宜,不過RSX和C1除了特定的地方之外,實在沒有什麼天差地遠的感覺,大概就是那種”半代”的落差吧,和G80和G70幾乎就是天差地遠的性能和功能差異不太一樣,G80找不到哪項G7x用任何方法能拼贏的。
>現在的CELL可用在遊戲物理運算上的潛力和Xenon可能沒有理論上差那麼多了.
其實我又回到前面這句話好了。
CELL和Xenon之間的浮點性能其實落差理論值本來就只有2:1左右,假設各種軟體實作同等、各自最佳化的話,應該也是在2:1左右的差異。
>應該是沒culling過的值….
TSE這東東的預設數量,在PS3和XBOX360的TSE初比較時,
當時在巴哈也是捲起一陣辯論,
記得那時PS3討論版alfread版主大大就曾經表示TSE夠用就行了,
小弟記得當時他是說Triangle經culling等處理後進入TSE,
在1080P或720P下60fps至多也超不出某個程度的值(小弟忘了那值是多少了),
以上是小弟依稀記得的,若有錯誤則小弟我…逃XD
所以以alfread版主大大言論來看,XBOX360也逃不出這限制,
所以XBOX360的頂點那麼多,其優勢是…?
>GS是多切出更多polygon、不過基本上是個並列的東西,沒有取代作用喔?
這表示是…假如Xenos可支援DX10,則VS,GS,PS各佔16US嗎?
>CELL和Xenon之間的浮點性能其實落差理論值本來就只有2:1左右,
>假設各種軟體實作同等、各自最佳化的話,應該也是在2:1左右的差異。
Cell所能乘載的工作量可以達到很多,在PS3上可有AI,物理和繪圖等,
所以經過Eji大的開導,
我相信Cell可用差不多的能力處理物理與Xenon相比外還可做很多的事.
> TSE這東東的預設數量,在PS3和XBOX360的TSE初比較時,
> 當時在巴哈也是捲起一陣辯論,
> 記得那時PS3討論版alfread版主大大就曾經表示TSE夠用就行了,
> 小弟記得當時他是說Triangle經culling等處理後進入TSE,
> 在1080P或720P下60fps至多也超不出某個程度的值(小弟忘了那值是多少了),
> 以上是小弟依稀記得的,若有錯誤則小弟我…逃XD
> 所以以alfread版主大大言論來看,XBOX360也逃不出這限制,
> 所以XBOX360的頂點那麼多,其優勢是…?
他可能是用”每個pixel在完全不被遮蔽下的狀況”,全都顯示在畫面上需要的pixel數量來推斷的吧。(因為culling之後,剩下的vertex都只有看得到的才會被TSE處理)
比方說「polygon再小都得要3個pixel才能顯示(三個頂點),就算全部相連可以飆高有效個數的話,整個畫面最多也100萬(720p)、或200萬(1080p)個pixel,那何必要有這麼多頂點?那這樣的話畫面上最多也只會有一到兩百萬個polygon了。」類似這樣的說法吧。
那現在狀況也很明顯啊,比方說Lost Planet使用的一些OGL trick,就已經使用到了額外的polyogn了,這就是上述的說法沒有考慮的地方。
實質上這個說法只適用於建模本身、而現在看起來這些遊戲的建模複雜度也的確維持在這個範疇內。(上面說過Lost Planet的人物萬餘、機組數萬、場景五十萬上下,加一加其實就是接近百萬,的確是沒超過100萬XD)
—-
最近看到SACD的部份VAIO PC也播得動了,就覺得CELL的倍精度浮點弱化其實真的蠻可惜的,如果CELL的倍精度浮點也是全速,顯然大家都一定會用,那遊戲物理模擬的精確度一定是當代無敵…. _A_(不過這個做夢作很大)
>實質上這個說法只適用於建模本身、
>而現在看起來這些遊戲的建模複雜度也的確維持在這個範疇內。
看樣子頂點多還是有優勢,
話說Xenos的頂點運算量理論值是2000MVertex/s(16US),
(在之前Eji大的Xenos改錯字後,其浮點從80G降到72G,其理論值亦向下修整)
看樣子RSX在這方面很難追,雖說天堂之劍將其用得很兇,
但還是避免不了在未來用SPE來處理頂點,
聽說SPE可用來做GS的工作,不曉得到底能不能辦到…?
http://blog.us.playstation.com/…-to-develop-for/
貼一篇這個….這是我印象第二個人跳出來講CELL其實寫程式本身不難的製作人。
但是說真的,我覺得難不是難在技術本身,是難在有沒有心…. _A_