【技術科普】動輒幾十個G,遊戲包體能不能減減肥?
近幾年,手機遊戲的畫質越來越好,內容也愈發豐富,這對廣大玩家們來說當然是一件好事。然而,與之相伴的問題便是,遊戲變得越來越“佔地”。有時一下更新就要幾個G甚至十幾個G的空間,讓本就不算寬裕的手機儲存捉襟見肘。為了下載遊戲,不得不四處清理檔案的窘境,相信不少觀眾都經歷過。
不知道大家是否會好奇,到底遊戲裡的什麼東西佔了那麼大的空間?研發又做了哪些壓縮包體的努力?遊戲大小和我們的實際體驗之間,有哪些不為大家所知的關係?今天這期魔方研究,我們專門請到了負責《暗區突圍》手遊客戶端開發的Nico和Banthy兩位技術專家,為大家答疑解惑。
首先,他們指出了包體越來越大的核心原因,那就是——美術品質的升級。遊戲安裝包中,佔地最大的就是各類美術資源,一般要超過70%。美術資源中不僅包含了組成角色、武器、場景的各類貼圖和網格模型,讓一切“動起來”的骨骼動畫,讓光影更自然的預烘焙光照資訊,以及CG過場等內容。隨著美術品質的提高,以上各類素材的體積都有所增加,直接導致了遊戲包體的膨脹。除此之外,則是音訊資源,引擎程式碼等等。
那麼遊戲體積太大會帶來哪些問題呢?首先自然是對下載轉化率的影響,從使用者選擇開始下載遊戲,到最終開始遊戲,這個環節會有一定比例的玩家流失、安裝包越大,自然有更多使用者因為流量有限,儲存空間不足,或者等待時間過長等原因放棄。減小遊戲包體,自然可以減少新進使用者的流失。
其次,過大的包體對玩家的長期留存也有一定的“威脅”。每次版本更新時巨大的安裝包,都存在勸退使用者的風險。這也是為何,手遊的大版本更新,通常都會搭配一定的“更新福利”來補償使用者。
因此,包體控制對於任何遊戲專案組來說,都是優先順序非常高的事情。同時,它也高度考驗多部門協同——程式、美術、策劃、音訊,甚至是海外本地化團隊都要為壓縮包體貢獻出自己的一份力。
貼圖和網格模型:提高複用率
既然美術資源是大頭,那麼壓縮包體自然要先從這裡入手。一個最直觀的手段,就是提高貼圖和模型的複用率。比如當我們在暗區的新地圖中放入一把椅子,如果可以直接複用舊地圖中椅子的貼圖和模型,那便不會額外增加資源量。反之,如果因為某些特別的設計需求,這必須是一把全新造型的椅子,那麼就會增加一定資源量。一個地圖中成千上萬的道具和模型,倘若都是“新面孔”,那所佔的空間就非常恐怖了。
因此,暗區的PM同學會制定一個相當嚴格的資源複用率標準。地圖用到的美術資源被劃分為所有地圖都會呼叫的公用資源庫,和某張地圖專屬的私有資源庫,並對私有資源庫的大小做限制。這也就解答了一些暗區先鋒們的疑問:為什麼暗區不同地圖的邊緣建築存在“克隆”的現象。這並不是美術同學偷懶不做,而是為了控制包體大小,不得不做出的“犧牲”。
其實暗區在這方面,甚至有一些“優勢”,因為世界觀層面,目前暗區的故事都在“卡莫納”地區發生,因此不同地圖植被和建築風格是相對統一的,複用起來並不太違和。而另一些遊戲,比如《原神》,由於設計需要,每個地區都要有鮮明的文化差異,無論是服裝、建築還是植被的複用率都比較低,自然包體就大了起來。
骨骼動畫:運用程式手段節約空間
如果說貼圖的複用主要靠美術和策劃在設計時的“自覺”,那麼動畫檔案的壓縮,就更依賴於一些程式工具了。舉例來說,在暗區中,根據改槍方案的不同,很多戰術動作都有著微妙的差異。比如瞄準鏡裝在武器不同插槽時,開鏡動作會略有不同。如果分別儲存各個情況下對應的動畫,佔用的空間就變得很大,因此開發大大會做一套程式工具來解決,只需錄入幾套最基礎的動畫,再用演算法微調不同情況下動畫的播放的起止位置即可。
再比如說,暗區中加入女先鋒的選項後,如果直接套用男角色的骨骼動畫,不管是裝備的穿戴效果還是槍械的使用動作都會有些奇怪。可如果為男女角色訂做完全不同的骨骼動畫,同樣會大幅增加佔用的資源,此時,我們同樣可以基於一套演算法,對男角色的骨骼動畫進行微調,生成可以較為自然適配女角色的骨骼動畫。當然,這種處理方案並不完美,採訪中,開發大大也表示,這確實是製作手機端遊戲時才會考慮的解決方案,如果“空間允許”,肯定男女角色分別做動捕,才有更自然的表現效果。
其它的美術素材壓縮方案還有:過場動畫避免直接使用預渲染的影片(MP4),而是儘量用引擎自帶的動畫工具進行指令碼演出。遊戲內場景中帶有文字的標牌儘量將文字和貼圖分開,這樣在製作海外版本的多語言包時可以只改文字,無需儲存多個貼圖等等...可以說,為了壓縮包體大小,哪怕是隻能減少幾MB空間的最佳化方案,也是很有必要嘗試的。
音訊:拆分小塊,程式輸出
說完了美術,我們再說說音訊。FPS的玩法決定了《暗區突圍》並不是一個BGM豐富,配音眾多的遊戲。但饒是如此,各類音樂、音效也要佔到幾百MB的空間。因此,音訊壓縮同樣必不可少。最直觀的,當然是控制音訊的位元速率,一個男團的幾十句喊話,最後實裝到遊戲中可能只佔幾MB。而在槍聲的處理上,暗區音訊組同樣使用了一些工具,將武器的各類音效拆分成最小單元,再基於需要進行組合和變化,在效果和空間佔用上找到平衡點。最終暗區的所有音訊檔案只有200MB左右,可以說是非常了不起的最佳化。
安裝包的問題
前面說了這麼多在開發過程中控制遊戲大小的方式,但其效果主要是讓“安裝完畢的遊戲”佔地儘量小一點。接下來我們要談的則是“遊戲安裝包”的問題。常玩各類新遊戲的觀眾可能注意到了,如今在下載新遊戲時,往往會分成兩步。第一步是從應用商店下載並安裝,但這還沒完,開啟安裝好的遊戲後,往往會再下載不少資源,才能正式開始遊戲。有時,進入遊戲後下載的資源量甚至比安裝包還要大,這又是為什麼呢?
首先,是因為平臺的限制。安卓和IOS對於軟體安裝包的大小均有一定的要求,安卓需要小於2GB,iOS則需要小於4GB。超過這個大小會無法透過平臺的稽核。所以大家看安卓版的《王者》、《和平》、《LOL手遊》的下載包都是卡在2GB,至於其它啟動遊戲所必須的資源,自然要開啟遊戲後再下載了。
可下完了安裝包,又要下那麼多資源,這體驗同樣不夠好。於是,為了讓大家能儘快“玩起來”,程式設計師們又做了資源“分級”設計。拿暗區舉例,玩家初次進入遊戲時,地圖資源只有農場地圖是完整下載的,因為新玩家前期不會進入別的地圖,這樣就能減少一些資源下載量。
而《王者榮耀》因為上線多年,玩法眾多,資源分級就做得更細緻了,從高畫質素材到商店皮膚,再到不同模式的地圖,都被拆分為不同的資源包,可以進入遊戲後邊玩邊下。類似這樣的設計雖然不能減少完整安裝後的大小,但起碼可以做到讓玩家“儘快玩到”,也算是一種很實用的技術方案。
在這次採訪的最後,我們問兩位開發大大這樣一個問題——倘若遊戲的包體限制不存在,手遊的品質會有很大的提升嗎?他們表示,提升肯定有,但並不會有很多玩家想象得那麼大。因為,包體限制只是手遊開發所面臨的諸多限制中的一個。其它諸如記憶體佔用限制,晶片算力限制等問題其實更棘手。至少對於《暗區》來說,控制記憶體佔用的難度,要比控制包體還要大上不少。
總的來說,他們認為,由於在開發之初就做了細緻合理的規劃,《暗區突圍》的包體控制肯定說得上是手遊中的“模範生”了。在未來,他們也在考慮實裝更多減輕玩家負擔的技術手段,比如在版本更新時對一些地圖資源進行差量更新,可以減少大家更新版本時需要下載的資源包。不過,差量更新與資源加密工作存在一定衝突,需要花一些時間來克服,還請大家再耐心等待一段時間。只要是對玩家體驗有好處的技術,他們一定都會認真研究可行性的!
不得不說,這次的採訪真的給我留下了非常深刻的印象,比起平時大家接觸更多的策劃和運營,技術團隊在遊戲開發中所扮演的角色,往往並不為玩家們所瞭解。但實際上,沒有他們的縝密規劃,遊戲的迭代也很難有條不紊地推進,實際體驗也難免大打折扣。以後有機會,我也會跟大家再多介紹更多技術開發背後的小秘密——
來源:騰訊魔方工作室
不知道大家是否會好奇,到底遊戲裡的什麼東西佔了那麼大的空間?研發又做了哪些壓縮包體的努力?遊戲大小和我們的實際體驗之間,有哪些不為大家所知的關係?今天這期魔方研究,我們專門請到了負責《暗區突圍》手遊客戶端開發的Nico和Banthy兩位技術專家,為大家答疑解惑。
首先,他們指出了包體越來越大的核心原因,那就是——美術品質的升級。遊戲安裝包中,佔地最大的就是各類美術資源,一般要超過70%。美術資源中不僅包含了組成角色、武器、場景的各類貼圖和網格模型,讓一切“動起來”的骨骼動畫,讓光影更自然的預烘焙光照資訊,以及CG過場等內容。隨著美術品質的提高,以上各類素材的體積都有所增加,直接導致了遊戲包體的膨脹。除此之外,則是音訊資源,引擎程式碼等等。
各種美術資源
那麼遊戲體積太大會帶來哪些問題呢?首先自然是對下載轉化率的影響,從使用者選擇開始下載遊戲,到最終開始遊戲,這個環節會有一定比例的玩家流失、安裝包越大,自然有更多使用者因為流量有限,儲存空間不足,或者等待時間過長等原因放棄。減小遊戲包體,自然可以減少新進使用者的流失。
大家有為了下載遊戲到處刪東西的情況嗎
其次,過大的包體對玩家的長期留存也有一定的“威脅”。每次版本更新時巨大的安裝包,都存在勸退使用者的風險。這也是為何,手遊的大版本更新,通常都會搭配一定的“更新福利”來補償使用者。
更新都會有福利
因此,包體控制對於任何遊戲專案組來說,都是優先順序非常高的事情。同時,它也高度考驗多部門協同——程式、美術、策劃、音訊,甚至是海外本地化團隊都要為壓縮包體貢獻出自己的一份力。
貼圖和網格模型:提高複用率
既然美術資源是大頭,那麼壓縮包體自然要先從這裡入手。一個最直觀的手段,就是提高貼圖和模型的複用率。比如當我們在暗區的新地圖中放入一把椅子,如果可以直接複用舊地圖中椅子的貼圖和模型,那便不會額外增加資源量。反之,如果因為某些特別的設計需求,這必須是一把全新造型的椅子,那麼就會增加一定資源量。一個地圖中成千上萬的道具和模型,倘若都是“新面孔”,那所佔的空間就非常恐怖了。
不同地圖,相同的椅子
因此,暗區的PM同學會制定一個相當嚴格的資源複用率標準。地圖用到的美術資源被劃分為所有地圖都會呼叫的公用資源庫,和某張地圖專屬的私有資源庫,並對私有資源庫的大小做限制。這也就解答了一些暗區先鋒們的疑問:為什麼暗區不同地圖的邊緣建築存在“克隆”的現象。這並不是美術同學偷懶不做,而是為了控制包體大小,不得不做出的“犧牲”。
“按需下載”
其實暗區在這方面,甚至有一些“優勢”,因為世界觀層面,目前暗區的故事都在“卡莫納”地區發生,因此不同地圖植被和建築風格是相對統一的,複用起來並不太違和。而另一些遊戲,比如《原神》,由於設計需要,每個地區都要有鮮明的文化差異,無論是服裝、建築還是植被的複用率都比較低,自然包體就大了起來。
骨骼動畫:運用程式手段節約空間
如果說貼圖的複用主要靠美術和策劃在設計時的“自覺”,那麼動畫檔案的壓縮,就更依賴於一些程式工具了。舉例來說,在暗區中,根據改槍方案的不同,很多戰術動作都有著微妙的差異。比如瞄準鏡裝在武器不同插槽時,開鏡動作會略有不同。如果分別儲存各個情況下對應的動畫,佔用的空間就變得很大,因此開發大大會做一套程式工具來解決,只需錄入幾套最基礎的動畫,再用演算法微調不同情況下動畫的播放的起止位置即可。
再比如說,暗區中加入女先鋒的選項後,如果直接套用男角色的骨骼動畫,不管是裝備的穿戴效果還是槍械的使用動作都會有些奇怪。可如果為男女角色訂做完全不同的骨骼動畫,同樣會大幅增加佔用的資源,此時,我們同樣可以基於一套演算法,對男角色的骨骼動畫進行微調,生成可以較為自然適配女角色的骨骼動畫。當然,這種處理方案並不完美,採訪中,開發大大也表示,這確實是製作手機端遊戲時才會考慮的解決方案,如果“空間允許”,肯定男女角色分別做動捕,才有更自然的表現效果。
其它的美術素材壓縮方案還有:過場動畫避免直接使用預渲染的影片(MP4),而是儘量用引擎自帶的動畫工具進行指令碼演出。遊戲內場景中帶有文字的標牌儘量將文字和貼圖分開,這樣在製作海外版本的多語言包時可以只改文字,無需儲存多個貼圖等等...可以說,為了壓縮包體大小,哪怕是隻能減少幾MB空間的最佳化方案,也是很有必要嘗試的。
音訊:拆分小塊,程式輸出
說完了美術,我們再說說音訊。FPS的玩法決定了《暗區突圍》並不是一個BGM豐富,配音眾多的遊戲。但饒是如此,各類音樂、音效也要佔到幾百MB的空間。因此,音訊壓縮同樣必不可少。最直觀的,當然是控制音訊的位元速率,一個男團的幾十句喊話,最後實裝到遊戲中可能只佔幾MB。而在槍聲的處理上,暗區音訊組同樣使用了一些工具,將武器的各類音效拆分成最小單元,再基於需要進行組合和變化,在效果和空間佔用上找到平衡點。最終暗區的所有音訊檔案只有200MB左右,可以說是非常了不起的最佳化。
安裝包的問題
前面說了這麼多在開發過程中控制遊戲大小的方式,但其效果主要是讓“安裝完畢的遊戲”佔地儘量小一點。接下來我們要談的則是“遊戲安裝包”的問題。常玩各類新遊戲的觀眾可能注意到了,如今在下載新遊戲時,往往會分成兩步。第一步是從應用商店下載並安裝,但這還沒完,開啟安裝好的遊戲後,往往會再下載不少資源,才能正式開始遊戲。有時,進入遊戲後下載的資源量甚至比安裝包還要大,這又是為什麼呢?
首先,是因為平臺的限制。安卓和IOS對於軟體安裝包的大小均有一定的要求,安卓需要小於2GB,iOS則需要小於4GB。超過這個大小會無法透過平臺的稽核。所以大家看安卓版的《王者》、《和平》、《LOL手遊》的下載包都是卡在2GB,至於其它啟動遊戲所必須的資源,自然要開啟遊戲後再下載了。
不同系統對軟體安裝包大小的要求也不同
可下完了安裝包,又要下那麼多資源,這體驗同樣不夠好。於是,為了讓大家能儘快“玩起來”,程式設計師們又做了資源“分級”設計。拿暗區舉例,玩家初次進入遊戲時,地圖資源只有農場地圖是完整下載的,因為新玩家前期不會進入別的地圖,這樣就能減少一些資源下載量。
而《王者榮耀》因為上線多年,玩法眾多,資源分級就做得更細緻了,從高畫質素材到商店皮膚,再到不同模式的地圖,都被拆分為不同的資源包,可以進入遊戲後邊玩邊下。類似這樣的設計雖然不能減少完整安裝後的大小,但起碼可以做到讓玩家“儘快玩到”,也算是一種很實用的技術方案。
王者中不同的資源包
在這次採訪的最後,我們問兩位開發大大這樣一個問題——倘若遊戲的包體限制不存在,手遊的品質會有很大的提升嗎?他們表示,提升肯定有,但並不會有很多玩家想象得那麼大。因為,包體限制只是手遊開發所面臨的諸多限制中的一個。其它諸如記憶體佔用限制,晶片算力限制等問題其實更棘手。至少對於《暗區》來說,控制記憶體佔用的難度,要比控制包體還要大上不少。
總的來說,他們認為,由於在開發之初就做了細緻合理的規劃,《暗區突圍》的包體控制肯定說得上是手遊中的“模範生”了。在未來,他們也在考慮實裝更多減輕玩家負擔的技術手段,比如在版本更新時對一些地圖資源進行差量更新,可以減少大家更新版本時需要下載的資源包。不過,差量更新與資源加密工作存在一定衝突,需要花一些時間來克服,還請大家再耐心等待一段時間。只要是對玩家體驗有好處的技術,他們一定都會認真研究可行性的!
不得不說,這次的採訪真的給我留下了非常深刻的印象,比起平時大家接觸更多的策劃和運營,技術團隊在遊戲開發中所扮演的角色,往往並不為玩家們所瞭解。但實際上,沒有他們的縝密規劃,遊戲的迭代也很難有條不紊地推進,實際體驗也難免大打折扣。以後有機會,我也會跟大家再多介紹更多技術開發背後的小秘密——
來源:騰訊魔方工作室
相關文章
- 給iOS App減肥iOSAPP
- hosen減肥實錄
- 佛系減肥第91天,減重39斤。
- Webpack + Vue,部署時減少包體積的幾種方法WebVue
- 高達181斤!VR遊戲《Beat Saber》助力眾多胖子玩家減肥成功VR遊戲
- 當代減肥人群鑑別指南
- 我國科學家發現減肥新機制,泡熱水澡減肥有了依據!
- DMAIC:科學助力你的減肥之路!AI
- JAMA:如何防癌?減肥可以讓癌症風險減少30%、死亡率下降近一半!手術減肥效果一樣!
- 研究顯示運動並不是一種有效的減肥方式
- 研究發現運動對減肥是基本沒有幫助
- Weight for weight JavaScript趣題:減肥俱樂部JavaScript
- 報告:全球45%的人口正在努力減肥
- "減時限、減材料、減跑動",浪潮軟體助力衡陽政府數字化轉型
- 一直減肥但一直肥?只因沒選對運動時間!PNAS最新:這個時間運動,“燃脂”效果更佳
- 一個小技巧,Maven的打Jar包體積減少100倍MavenJAR
- 一篇來自火星的營養減肥技巧
- 《科學》:22035年全球肥胖率達51% “減肥神藥”名列年度十大突破榜首
- iOS App優化1---減少包體積iOSAPP優化
- 高效減重15kg?“減肥神藥”口服版III期臨床試驗成功!背後是…….
- 《美國醫學會內科雜誌》:研究發現多睡覺能減肥 每天多睡1小時 3年減肥12公斤
- 動輒上億! 遊戲開發到底有多燒錢?遊戲開發
- 遊戲畫面如何去減少廉價感遊戲
- 「最減肥」的運動時間出爐!最新研究:早上7-9點運動,減脂效率最高,還能降低中風和癌症風險!
- Nature子刊:吹空調不僅涼快,還能減肥
- 女朋友想減肥,程式設計師花了三天寫了個卡路里計數器程式設計師
- 高通5G技術加持 開啟AR/VR和雲遊戲等全新移動體驗VR遊戲
- GSMA報告:移動技術對減少碳排放量的影響
- 遊戲技術遊戲
- [技術交流]能不能回覆?
- 教您如何整合Nearby Service提升遊戲體驗,減少開發難度遊戲
- 查明肥胖原因有助減肥 肥胖人群快來找找有沒有你
- 我可以減肥失敗,但我的 Docker 映象一定要瘦身成功!Docker
- 疫情來了,遊戲企業房租怎麼減免?遊戲
- 遊戲測試 Perfdog 實戰之減少 CPU 消耗遊戲
- Nature子刊:「氣味療法」可促進脂質代謝輕鬆減重,或是減肥困難戶福音!
- 《美國營養學期刊》:研究顯示減肥關鍵不在運動而在於飲食
- 產品經理如何幫助減少技術債務 ?