任天堂主機的開發難度真的比其他主機高嗎?
大萨比,遊戲(圖形)引擎工程師,Square Enix
發佈於 2018-04-18 17:30 / 編輯於 2018-04-24
https://www.zhihu.com/question/273692465/answer/370060008
現代的遊戲引擎都是分層架構的。
真正對平台差異化進行封裝的部分實際佔比不到10%。
API層面上,如果引擎本身就支持多平台(PC/PS/...etc),增加一個平台不過是補全平台差異的部分,大概幾週就能正常完成支持。
關於開發套件的問題,Switch算是老任開發套件進步最大的一個:全面支持visual studio。從調試器到編譯器都支持。
由此PS/XBOX全系列+Switch都能統一到同一個IDE進行開發,調試。
當然,語言都是C++。也就是說程序員寫的代碼能自由在各大平台運行,而無需關心架構。無論是x86/ARM/Power,對於99%的開發來說,架構對自己沒有任何影響。
我見過這麼一個項目,現在已發售,平台支持PS3/PS4/PSVita/Switch,增加Switch支持的時候,最大改動就是圖形API的底層擴展和Shader編譯器的支持。素材和Shader方面盡量使用PS4的高清材質。 Switch雖然配置看起來像個手機,但實際上確實有接近PS4的計算能力*,意外的沒有費太大力氣。部分處理性能甚至會高於PS4,於是取一下平衡點把性能特別差的地方針對優化。在整個遊戲開發週期裡,並沒有佔據太多的時間。
而個人估計那些花過多時間做平台移植的多半是太小看移植成本了,只分配了一兩個程序員做了原本四五個人該做的活。
*參數上並不接近,但結果看下來並沒有想像的那麼差,由於分辨率不同,瓶頸不同等諸多原因導致。