號(hào)外號(hào)外,內(nèi)存分析器(Memory Profiler)1.0.0版上線啦!

來(lái)源:Unity官方平臺(tái)
作者:Unity官方平臺(tái)
時(shí)間:2023-02-22
1747
在我們發(fā)布的Unity 2022.2 Tech Stream中,1.0.0版本的Memory Profiler已經(jīng)正式面向所有人開(kāi)放。該版本進(jìn)一步完善了性能分析工具,可描繪更全面的內(nèi)存使用情況,使得性能優(yōu)化與內(nèi)存問(wèn)題檢測(cè)更為方便快捷。

在我們發(fā)布的Unity 2022.2 Tech Stream中,1.0.0版本的Memory Profiler已經(jīng)正式面向所有人開(kāi)放。該版本進(jìn)一步完善了性能分析工具,可描繪更全面的內(nèi)存使用情況,使得性能優(yōu)化與內(nèi)存問(wèn)題檢測(cè)更為方便快捷。

內(nèi)存分析器(Memory Profiler):概覽

應(yīng)用在容量有限的設(shè)備上非常容易出現(xiàn)內(nèi)存溢出甚至崩潰的情況,因此內(nèi)存優(yōu)化至關(guān)重要。如果項(xiàng)目需要發(fā)布至多個(gè)平臺(tái),開(kāi)發(fā)者如何調(diào)整內(nèi)存占用,最大化利用每個(gè)平臺(tái)更是要考慮的重點(diǎn)。

Memory Profiler可以解決以上問(wèn)題,讓用戶能夠截取并審查游戲在特定時(shí)間點(diǎn)的內(nèi)存占用情況。并借助這些“快照”,讓用戶找出游戲中最占內(nèi)存的部分或崩潰的原因。

注:Memory Profiler的完整功能和內(nèi)存跟蹤僅支持2022.2及以上版本,但用戶也可以在2022及以上的空項(xiàng)目里打開(kāi)窗口、導(dǎo)入舊版快照,再用新界面進(jìn)行分析。

工具的發(fā)展歷程

Memory Profiler最初是作為試驗(yàn)包發(fā)布的,在這次的新版本中,我們聽(tīng)取了多位早期用戶的反饋意見(jiàn),大幅修改了UI和UX,使其更加易用。

因此,在開(kāi)發(fā)新版本時(shí),Unity設(shè)立了以下幾個(gè)目標(biāo):

1、簡(jiǎn)化最常見(jiàn)、最重要的使用流程,讓問(wèn)題的識(shí)別和修復(fù)更快

2、提供更全面和可靠的信息,使多種設(shè)備(使用平臺(tái)專用的分析器)的內(nèi)存占用對(duì)比更簡(jiǎn)單

3、用更易理解的方式呈現(xiàn)信息,讓缺乏專業(yè)知識(shí)的用戶同樣能有效地優(yōu)化應(yīng)用

為實(shí)現(xiàn)目標(biāo),Unity與早期用戶緊密合作來(lái)了解他們的需求和痛點(diǎn),推出數(shù)代設(shè)計(jì)直至達(dá)成最佳的用戶體驗(yàn)。

得益于這些用戶的反饋,Unity團(tuán)隊(duì)極大地精簡(jiǎn)了工具,移除了不少術(shù)語(yǔ),使對(duì)象、細(xì)節(jié)信息和依賴項(xiàng)的檢查更為輕松。

工具內(nèi)容

Memory Profiler由三部分組成,每部分都用上了改進(jìn)后的新UI:

1、快照列表(Snapshot list)

2、主窗口,被分為三種工作視圖:摘要(Summary)、Unity對(duì)象(Unity Objects)和總內(nèi)存(All of Memory)

3、所選對(duì)象細(xì)節(jié)

快照列表

快照列表保存了用戶在游戲中截取的快照,以及內(nèi)存使用、截圖日期等信息。用戶可以使用工具欄的“Capture”,或者主窗口上的快照按鈕,來(lái)截取快照。

對(duì)比多張快照可檢查內(nèi)存占用是否有變化,并了解項(xiàng)目性能是否有提升。

最后,用戶也能在快照列表里查看單張快照或?qū)Ρ葦?shù)張快照(下文將將詳細(xì)介紹)。

640.jpg

主窗口

主窗口是Memory Profiler的核心區(qū)域,它被分為三個(gè)視圖:摘要(Summary)、Unity對(duì)象(Unity Objects)和總內(nèi)存(All of Memory)每個(gè)視圖都可在主窗口頂部打開(kāi)。

摘要(Summary)視圖是加載或截取快照時(shí)的默認(rèn)視圖。它提供了當(dāng)前內(nèi)存占用、設(shè)備“常駐”內(nèi)存以及提交但未使用的內(nèi)存等信息。內(nèi)存會(huì)被分成多個(gè)類型,以方便用戶開(kāi)始調(diào)查。

最后,摘要(Summary)視圖是開(kāi)展詳細(xì)分析,如“占內(nèi)存最大的Unity對(duì)象”或“托管內(nèi)存拆分”等的入口。

640 (1).jpg

Unity對(duì)象(Unity Objects)視圖應(yīng)該是最常用的視圖。它列出了所有加載到內(nèi)存的對(duì)象,如紋理、著色器、字體等。用戶通??梢栽诖颂幷页瞿男?duì)象過(guò)大,哪些是錯(cuò)誤加載的,或者哪些一直被引用、保留在內(nèi)存里的。

640 (2).jpg

總內(nèi)存(All of Memory)視圖支持查看分過(guò)類的所有內(nèi)存——包括本機(jī)內(nèi)存(Native)、托管內(nèi)存(Managed)、圖形內(nèi)存(Graphics)和可執(zhí)行文件內(nèi)存(Executables)。用戶可以在此查看Memory Priofiler捕捉的數(shù)據(jù),調(diào)查應(yīng)用的特定方面,了解項(xiàng)目?jī)?nèi)存由哪些東西組成。

640 (3).jpg

所選對(duì)象細(xì)節(jié)(Selection details)視圖

所選對(duì)象細(xì)節(jié)(Selection details)提供了主屏幕被選中對(duì)象的詳細(xì)信息,包括內(nèi)存類別的描述、對(duì)象的潛在引用或詳情。

更多的信息可幫用戶了解查看的對(duì)象,以及它為何出現(xiàn)在內(nèi)存中。并且,如果編輯器打開(kāi)了一個(gè)項(xiàng)目,用戶可以“ping”出對(duì)象,直接在場(chǎng)景或項(xiàng)目窗口檢查資產(chǎn)。

640 (4).jpg

對(duì)比快照

以上所有視圖都能用于檢查單張快照或?qū)Ρ榷鄰埧煺铡?/p>

如果要對(duì)比一張快照,請(qǐng)選擇列表中的“Compare”,再選取第二張快照。打開(kāi)對(duì)比欄時(shí)所有視圖都會(huì)自動(dòng)轉(zhuǎn)換成對(duì)比模式。

對(duì)比模式下,摘要(Summary)視圖將并排顯示兩張截圖的內(nèi)存分析,方便對(duì)比兩者內(nèi)存占用的主要不同(對(duì)比雙方會(huì)被稱為“A”和“B”)。

640 (5).jpg

Unity對(duì)象(Unity Objects)和總內(nèi)存(All of Memory)視圖帶有一種新的專用UI,讓用戶能查看各類內(nèi)存的大小變化或?qū)ο蟮臄?shù)量變化。

在上方選取一個(gè)類別,用戶就能在下方圖表中查看A與B單個(gè)類別上的不同。

640 (6).jpg

如果想重新檢查單張快照,用戶可以選擇列表的“Single”。第二張對(duì)比照仍會(huì)保留,方便用戶快速在兩個(gè)視圖間切換。

了解Unity內(nèi)存及其優(yōu)化方法

在未來(lái),Unity計(jì)劃提供更多資源與信息,來(lái)介紹如何識(shí)別常見(jiàn)的內(nèi)存問(wèn)題以及Unity內(nèi)存的工作方式,幫助用戶學(xué)習(xí)高效的內(nèi)存優(yōu)化。

立即登錄,閱讀全文
原文鏈接:點(diǎn)擊前往 >
文章來(lái)源:Unity官方平臺(tái)
版權(quán)說(shuō)明:本文內(nèi)容來(lái)自于Unity官方平臺(tái),本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家