[技術討論] 3d game的performance tuning

想問是不是應該將performance tune到盡(以不犧牲畫質為前提),讓即使最低階的設備都玩到高效?
是不是現在大部份產品都沒有做好tuning,而技術上本來應該做到的?

本帖最後由 chi251155 於 2016-2-19 09:35 編輯

回覆 1# ati16800


    不犧牲畫質呢個講法唔係最正確。好似soft shadow、environmental reflection呢類ray tracing等等,你可以少啲pass黎換performance。但其實行4個pass已經過得去,再上會再靚啲咁。咁算唔算犧牲畫質呢?

而家做得既做做哂咁濟,system上做到既都做左,例如用memory pool、resource cache;係data structure上用啲complex啲但runtime efficient啲既,例如quadtree、scene graph;能夠用texture做既都用,例如displacement map、shadow map、height map;graphics上都係啦,culling、level of detail;physics同network更係highly optimized。

TOP

D game 多數有唔同quality 俾你choose,部機唔夠快咪冇咁靚,小啲野。如unreal engine 已有晒Scalability 俾你set 唔同機用乜野設定。

TOP

樓主其實知唔知自己講緊乜:?:

TOP

想問是不是應該將performance tune到盡(以不犧牲畫質為前提),讓即使最低階的設備都玩到高效?
是不是現在 ...
ati16800 發表於 2016-2-18 19:35

行個profiler睇吓有乜要tune先..

TOP

行個profiler睇吓有乜要tune先..

行完profiler之後會點?花左半日執完幾個慢位,可能由8核都唔順變左4核有60fps,即刻收工?還是會執到單核都唔覺疾?

TOP

行完profiler之後會點?花左半日執完幾個慢位,可能由8核都唔順變左4核有60fps,即刻收工?還是會執到單核 ...
ati16800 發表於 2016-2-19 19:05

我prefer主流配置唔疾就收工..

TOP

本帖最後由 evec 於 2016-2-21 03:35 編輯

事實上唔係,tune 到最 optimize 係偽名題,浪費一年時間去Tune快個少少。
仲有達至最optimize 時整個軟件的 flexible 會降到好低,低到你會為一個特效只顯示十秒而特登用成年時間來寫個方程式就係為咗FPS由23去到25。
仲有好多架構上的野,如智能AI的生成,要改可以要把入面幾成的CODE改咗,改咗唔緊要,要用寫CODE時間的幾倍來DEBUG,大大獲。
而且一般3D GAME都會用到現成的Engine,但現成的3D Engine代表有一定通用性,就唔會太快,易編程的又唔會太快,如Unity會慢過自己寫一個3D Engine,但自己寫一個3D Engine好可能只限自己個GAME先好用,就係靈活性同效率問題。

本人以前花過時間完全重新寫一個Android上用的3D Engine出來,效率非常好,但只適合我寫隻賽車GAME,所有特效均做一個OpenGL ES Shader 出來,有D幾個特效用一個Shader係內部用if switch 來簡化,係連字體特效引擎都做出來,煙火效果生成又要自己寫,基本上你想了解D方面,你必須自己寫一個3D Engine, 例如樓上講知道 ray tracing 的原理同數學模型而做翻出來唔係Copy and Paste 係好基本的野,但不要說一般Progammer,連寫GAME佬百分之九十都係寫唔出,因為好多寫GAME佬只係識用堆遊戲引擎,除非SMU Guildhall 個類畢業生就基本一定要寫得出,但佢地係天價勁難讀,你未做過或根本寫唔到,就連談都不可能,就不要論甚麼optimum,因為3D 引擎很多野係靠估,數學公式係某D情況下係錯到離譜,點樣模擬似個件野出來己經係特大科學,數理專家,仲想optimum 真係天荒夜談,如果知的話,GAME入面其實好多只係魔術,做台戲比你覺得係真而己。

TOP