bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

APP&游戲需要關注Jank卡頓嗎?

第一部分:FrameTime

網站建設哪家好,找創新互聯!專注于網頁設計、網站建設、微信開發、微信小程序開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了孝感免費建站歡迎大家使用!

FrameTime 的定義:兩幀畫面間隔耗時(也可簡單認為單幀渲染耗時)。

對于FrameTime和卡頓是否有關聯?請看下圖的案例圖示:

APP&游戲需要關注Jank卡頓嗎?

    從圖中可看出畫面中B幀在GPU渲染耗時(幀生成時間)大于顯示器刷新間隔,占用兩次顯示器刷新耗時。也就是說有一次畫面沒刷新。當出現多次沒有畫面刷新(也就是說畫面沒變化),則可能是一次卡頓。

從這里就得出結論:玩家用戶真正看到的是屏幕新畫面刷新間隔時間,而不是eglSwapbuffers-GPU渲染完成(并未有提交屏幕顯示)間隔時間。所以后面所提到Frametime統統指的是屏幕Display-Frametime。

PerfDog工具優點:PerfDog統計的FPS和Frametime都是用戶看到的屏幕Display新畫面真實刷新FPS和幀耗時。所以大家可以直接通過Frametime來判斷測試過程中是否出現卡頓。

第二部分:FPS

FPS的定義:幀率(1秒內平均畫面刷新次數)。

平均幀 率:傳統常說的FPS,1秒內平均畫面刷新次數。

瞬時幀率 :單幀耗時FrameTime算出來實時FPS,每一幀畫面刷新耗時換算出的實時幀率。

畫面渲染流程圖如下,每一幀FrameTime。

APP&游戲需要關注Jank卡頓嗎?

PerfDog統計幀率及FrameTime如下圖:

APP&游戲需要關注Jank卡頓嗎?

FPS幀率與卡頓是否有關系?我們分為Andriod和ios兩個場景去進一步了解:

iOS端

    蘋果WDDC18年開發者大會

①     FramePacing

比如下面兩個游戲畫面,左邊的試圖以60幀運行,但實際只能達到40幀;右邊的則持續穩定在30幀運行:

APP&游戲需要關注Jank卡頓嗎?

    上圖左邊幀率高,反而看起來有一卡一頓的現象,這就是Micro Stuttering(微型口吃)導致的,左邊FrameTime如下圖:

APP&游戲需要關注Jank卡頓嗎?

    通過FrameTime可以看出,左邊高幀率FPS=40幀率中出現一次FrameTim>=117ms,理論平均FrameTime=25ms。所以非均勻渲染,雖然幀率高達40,但依然覺得非常卡。

右邊低幀率30幀運行FrameTime如下圖:

APP&游戲需要關注Jank卡頓嗎?

從上面FrameTime可以看出,幀率FPS=30,FrameTime均勻為33ms,畫面會非常平滑。

總結:幀率高,未必流暢。

Android端

    測試系統版本:Android4.4

①     流暢度機制-黃油計劃(Jank)

Google Jank 計算思路:考慮視覺慣性,以硬件vsync時間間隔,連續1次vsync沒有新畫面刷新,則認為是一次卡頓,也就是說下一次vsync時間點沒有新畫面刷新,則認為是一次Jank。

APP&游戲需要關注Jank卡頓嗎?

第三部分:流暢度

流暢度與卡頓的關聯可以用以下的流程圖來大致展示:

APP&游戲需要關注Jank卡頓嗎?

    流暢度影響卡頓。這個可以簡單的理解為視覺慣性和電影幀這兩個方面:

1、視覺慣性

    視覺預期幀率,用戶潛意識里認為下幀也應該是當前幀率刷新比如一直60幀,用戶潛意識里認為下幀也應該是60幀率。刷新一直是25幀,用戶潛意識里認為下幀也應該是25幀率。但是刷新如果是60幀一下跳變為25幀,擾亂用戶視覺慣性。這個時候就會出現用戶體驗的卡頓感。

2、電影幀

    電影幀率(18-24),一般是24幀。電影幀單幀耗時:1000ms/24=40ms。電影幀率是一個臨界點。低于這個幀率,人眼基本能感覺畫面不連續性,也就是感覺到了卡頓。

第四部分:PerfDog-Jank

    PerfDog Jank 計算思路:考慮視覺慣性,假設以前三幀的平均幀耗時為參考,作為vsync時間間隔,連續兩次vsync沒有新渲染畫面刷新,則認為是一次潛在卡頓,也就是說下一幀耗時大于前三幀平均幀耗時2倍,則認為一次潛在卡頓。同時單幀耗時滿足大于兩倍電影幀耗時1000ms/24*2 (由于人眼低于24幀才能辨別畫面不連續性),則認為是一次真正卡頓。同時若單幀耗時大于3倍電影幀耗時,則認為是一次嚴重卡頓。

注解:為什么是兩次vsync?GPU一般是3重緩沖buffer,當前幀已占用一個buffer,即剩余2緩沖buffer,人眼一般可容忍2幀延遲。

    為什么是兩幀電影幀耗時?低于24幀畫面,人眼就能感知到畫面不連續性,電影一般都是24幀。即電影幀耗時1000ms/24=41.67ms,兩幀電影幀耗時也就是41.67ms*2,三幀電影幀耗時是41.67ms*3。

PerfDog Jank計算方法:

同時滿足兩條件,則認為是一次卡頓Jank.

①Display FrameTime>前三幀平均耗時2倍。

②Display FrameTime>兩幀電影幀耗時 (1000ms/24*2=84ms)。

同時滿足兩條件,則認為是一次嚴重卡頓BigJank.

①Display FrameTime >前三幀平均耗時2倍。

②Display FrameTime >三幀電影幀耗時(1000ms/24*3=125ms)。

Google-Jank如圖:

APP&游戲需要關注Jank卡頓嗎?

PerfDog-Jank如圖:

APP&游戲需要關注Jank卡頓嗎?

真實測試FrameTime計算Jank,如下圖:

APP&游戲需要關注Jank卡頓嗎?

PerfDog-Jank如圖:

APP&游戲需要關注Jank卡頓嗎?

備注:幀率低,并不是頓卡,如幀率都是只有幾幀了,還有什么頓卡而言?

目前主流游戲對比Jank如下:

APP&游戲需要關注Jank卡頓嗎?

PerfDog-web平臺

APP&游戲需要關注Jank卡頓嗎?

第五部分:影響

    從前面的知識了解到FrameTime、FPS、流暢度和Jank之間的緊密聯系后,就可以順其自然得出我們的結論:APP和游戲到底需不需要關注Jank卡頓呢?答案是需要的,并且還是重點關注!理由如下:

游戲方面

游戲流暢度是最影響用戶體驗的,所以需要重點關注FPS和Jank。

備注:比如游戲中已預知的卡頓,如新UI彈出等造成卡頓,可認為是干擾,需要剔除,不應算在Jank,可通過web云上,框選右鍵刪除干擾數據。

APP方面

APP也需要關注FPS及Jank。只是需要區分使用場景,如:

1)     靜態頁面窗口

只需關注FPS,理論FPS應該為0,否則,說明有冗余刷新,容易引起手機發熱及耗電。

2)     有滾動動畫頁面窗口

只需關注FPS,FPS處于合適值即可,無需高頻刷新。

3)     快速滑動頁面窗口。

需要關注FPS和Jank。手機交互靈敏度就是來源于此,Android系統才出黃油計劃Jank。一般滑動狀態下,幀率越高越好,Jank越小越好。

4)     播放視頻頁面窗口。

需要關注FPS和Jank,視頻卡頓直接影響用戶。視頻一般幀率18-24幀,Jank=0。比如微信播放視頻、視頻播放器等。

    通過這五部分的講解,相信大家可以清楚的了解Jank卡頓對于APP&游戲的重要,以及其關注的側重點,PerfDog正是是致力于為游戲&應用提升品質。

PerfDog是由WeTest騰訊質量開放平臺發行的移動全平臺iOS\Android性能測試工具,能快速定位分析性能問題,提升APP應用及游戲性能和品質,手機無需ROOT/越獄,手機硬件、游戲及應用無需做任何更改,極簡化即插即用。

掃碼即刻加群 與2000+測試同行深度交流

點擊閱讀原文直達官網!

PerfDog官網:perfdog.qq.com

騰訊WeTest官網:wetest.qq.com

PerfDog交流群:602206842

當前文章:APP&游戲需要關注Jank卡頓嗎?
轉載來源:http://vcdvsql.cn/article18/podigp.html

成都網站建設公司_創新互聯,為您提供靜態網站網站導航虛擬主機標簽優化商城網站微信小程序

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站建設