減少崩潰更穩定了!《英雄聯盟》客戶端優化進展公佈

發佈日期

  近日,《英雄聯盟》官方釋出了客戶端更新的日誌報告,下面為大家帶來官方原文。

  我們承諾不定期分享聯盟客戶端效能與可靠性更新工作的進展。

  本文是該系列的第七篇文章。( 這裡是第一篇、第二篇、第三篇、第四篇、第五篇和第六篇的連結。)

  概要:2021年第一季度,我們開啟了升級Chromium Embedded Framework(CEF)的道路。目前仍有部分工作有待完成,預計在第二季度末可以完成新版CEF,為玩家帶來更多便利。

  升級Chromium Embedded Framework(CEF)

  上次我們提到過,近期的重大專案之一,是客戶端Chromium Embedded Framework(CEF),也就是聯盟客戶端架構的核心網路瀏覽器的版本更新。坦白而言,上次我們低估了這項工作的重要性。無論從直接受益,還是為其他最佳化賦能的角度來看,CEF升級都是影響力最大的一項客戶端最佳化。

遊俠網1

  CEF上次升級是在2019年11月(版本74),而撰寫本文時,最新的版本是CEF 90。CEF升級(目標是CEF 90)將帶來以下好處:

  ● 減少客戶端崩潰

  ○ 過時的CEF版本在部分硬體上表現不佳。早期資料表明,大部分崩潰都是由CEF版本過時造成的。我們堅信升級後,玩家遭遇的崩潰次數會降低。

  ● 相容性最佳化

  ○ CEF團隊在大量硬體組合上對新版本進行了詳細測試。聯盟客戶端可以免費享受這些測試的成果。

  ● WebSocket效能加速

  ○ 聯盟客戶端包含兩大部分:“前端”部分與使用者進行視覺互動,“後臺”部分規模小得多,負責後臺執行、從伺服器調取資料和追蹤客戶端的所有資訊,以便向使用者呈現正確的最終結果。後臺的工作舉例:

  ■ “這位玩家在設定中選擇了遊戲中關閉客戶端,現在已經進入遊戲了,關閉前端,遊戲結束後再開啟。”

  ■ “這位玩家剛剛開啟了藏品標籤。裡面應該都有哪些英雄?”

  ○ 簡而言之,WebSocket就是前端與後臺連線的管道。拓寬管道,減少轉彎和打結的地方,資料傳輸就能更多更快,這正是新版本的CEF可以為我們帶來的好處。尤其是對使用較早硬體的玩家,WebSocket的最佳化對改善大批資料傳輸(如遊戲結束、英雄選擇)的效果更為明顯。與我們的CEF版本相比,最佳化幅度可達到:

  ■ Windows速度加快4.1倍

  ■ Mac速度加快7.8倍

  ● 動畫效能最佳化

  ○ 具體說來,是根據資料生成的動畫效果,如遊戲結束頁面的經驗條(還有許多類似的地方)。這些動畫從技術上來說是一種記憶體洩漏,因此長程式中的客戶端整體效能也會有所提升。

  ● FPS提升——延遲降低,點選響應速度加快

  ● 開發難度更低(就是更快、更可靠)

  ○ 更多避免較長遊戲程式中發生記憶體洩漏的方法

  ○ 一種新的衡量標準,更好地提供關於客戶端在螢幕上呈現資訊所需時間的資料

  ● CPU使用更智慧

  ○ 在客戶端當前CEF版本(74)中,一種叫做“網路服務(Network Service)”的功能首次登場,將所有網路請求透過一條線路輸入CPU,這樣其他線路就可以完成更多工,比如載入內容等。由於這個功能在我們上次更新CEF時,才剛剛推出,來不及進行測試,因此並沒有啟用。下一次升級時,就可以籌劃在聯盟中支援該功能了。

  ● JavaScript效能最佳化

  ○ 新的CEF版本對處理JavaScript的v8引擎進行了大幅最佳化。例如相容性最佳化,只需升級版本就可獲取。

  上個季度我們的工作重點是升級現有網路元件(比如視訊嵌入、彈窗提醒等等網站技術),使其版本與新CEF版本相容,確保升級CEF本身不會引發任何問題。我們希望這些元件的升級能夠實現無縫體驗,所以大家應該沒注意到在過去幾個補丁中逐步推出的升級。這些升級涉及到大量程式碼,因此偶爾也會出現測試中漏掉的小問題,但都立刻處理掉了。

  完成這些元件升級最多還需要幾周時間,隨後我們就可以開始升級CEF本身,並期望在2021年7月末完成。

相關攻略文章

最新攻略