動畫性能檢測方法和系統與流程
2023-10-04 06:34:44 1
本發明涉及動畫檢測技術領域,特別是涉及一種動畫性能檢測方法和系統。
背景技術:
Flash遊戲中存在著大量的動畫,而動畫也在是flash遊戲中CPU佔用率最高的部分之一。一般越複雜的flash動畫,其CPU佔用率越高,而較高的CPU佔用率會導致遊戲出現跳幀和卡頓現象從而影響遊戲體驗。
由於設計flash動畫的美術設計師在設計的時候主要考慮的是動畫的視覺效果,以至於後面遊戲開發人員在採用動畫設計師所設計的flash動畫的時候,如果不清楚動畫的性能,則增加了其工作難度。因此,需要一種快速準確的用來檢測動畫性能的方式。
技術實現要素:
基於此,有必要提供一種能快速準確的檢測出動畫性能的動畫性能檢測方法。
一種動畫性能檢測方法,包括以下步驟:獲取動畫播放舞臺中的待檢測動畫的數量;根據所述待檢測動畫的數量獲取所述待檢測動畫的最大同屏數量;獲取待檢測動畫的本機最低通過同屏數量,將所述待檢測動畫的最大同屏數量與所述待檢測動畫的本機最低通過同屏數量進行對比,若所述待檢測動畫的最大同屏數量達到所述待檢測動畫的本機最低通過同屏數量,則所述待檢測動畫檢測通過,否則檢測不通過。
在其中一個實施例中,所述根據所述待檢測動畫的數量獲取所述待檢測動畫的最大同屏數量的步驟,包括:根據所述待檢測動畫的數量檢測所述待檢測動畫是否存在跳幀,若是,則減少所述待檢測動畫的數量,否則,則增加所述待檢測動畫的數量;其中,每次減少或增加的待檢測動畫的個數是上一次減少或者增加的待檢測動畫的個數的一半;所述最大同屏數量為減少或增加一個待 檢測動畫時對應的待檢測動畫的數量。
在其中一個實施例中,所述根據所述待檢測動畫的數量獲取所述待檢測動畫的最大同屏數量的步驟,還包括:當減少或增加一個待檢測動畫後,若檢測到所述待檢測動畫不存在跳幀,則所述待檢測動畫的最大同屏數量為所述減少或增加一個待檢測動畫後對應的待檢測動畫數量,否則,為所述減少或增加一個待檢測動畫後對應的待檢測動畫的數量減1。
在其中一個實施例中,所述方法還包括:計算待檢測動畫的本機最低通過同屏數量,其中,所述待檢測動畫的本機最低通過同屏數量為本機算力與測試機算力的比值乘以預設的標準動畫在測試機上應達到的最低通過同屏數量後進行取整的數值;其中,所述本機算力是所述標準動畫在本機上檢測得到的最大同屏數量,所述測試機算力是所述標準動畫在測試機上檢測得到的最大同屏數量。
在其中一個實施例中,所述方法還包括:通過用戶界面顯示每次減少或增加的待檢測動畫的數量、是否存在跳幀、待檢測動畫的最大同屏數量、本機最低通過同屏數量以及檢測通過或不通過的檢測結果。
此外,還有必要提供一種能快速準確的檢測出動畫性能的動畫性能檢測系統。
一種動畫性能檢測系統,包括:最大同屏數量檢測模塊,用於獲取動畫播放舞臺中的待檢測動畫的數量;根據所述待檢測動畫的數量獲取所述待檢測動畫的最大同屏數量;動畫性能檢測模塊,用於獲取待檢測動畫的本機最低通過同屏數量,將所述待檢測動畫的最大同屏數量與所述待檢測動畫的本機最低通過同屏數量進行對比,判斷所述待檢測動畫的最大同屏數量是否達到所述待檢測動畫的本機最低通過同屏數量,若是,則判斷所述待檢測動畫檢測通過,否則,判斷檢測不通過。
在其中一個實施例中,所述最大同屏數量檢測模塊用於根據所述待檢測動畫的數量檢測所述待檢測動畫是否存在跳幀,若是,則減少所述待檢測動畫的數量,否則,則增加所述待檢測動畫的數量;其中,每次減少或增加的待檢測動畫的個數是上一次減少或者增加的待檢測動畫的個數的一半;所述最大同屏 數量為減少或增加一個待檢測動畫時對應的待檢測動畫的數量。
在其中一個實施例中,所述最大同屏數量檢測模塊還用於當減少或增加一個待檢測動畫後,若檢測到所述待檢測動畫不存在跳幀,則所述待檢測動畫的最大同屏數量為所述減少或增加一個待檢測動畫後對應的待檢測動畫數量,否則,為所述減少或增加一個待檢測動畫後對應的待檢測動畫的數量減1。
在其中一個實施例中,所述系統還包括:本機最低通過同屏數量計算模塊,用於計算待檢測動畫的本機最低通過同屏數量,其中,所述待檢測動畫的本機最低通過同屏數量為本機算力與測試機算力的比值乘以預設的標準動畫在測試機上應達到的最低通過同屏數量後進行取整的數值;其中,所述本機算力是所述標準動畫在本機上檢測得到的最大同屏數量,所述測試機算力是所述標準動畫在測試機上檢測得到的最大同屏數量。
在其中一個實施例中,所述系統還包括:顯示模塊,用於通過用戶界面顯示每次減少或增加的待檢測動畫的數量、是否存在跳幀、待檢測動畫的最大同屏數量、本機最低通過同屏數量以及檢測通過或不通過的檢測結果。
上述動畫性能檢測方法和系統,由於動畫的最大同屏數量可以用來表徵動畫的性能,根據待檢測動畫的數量獲取到待檢測動畫的最大同屏數量,當待檢測動畫的最大同屏數量達到本機最低通過同屏數量,則動畫性能的檢測通過。從而能夠快速準確的檢測出動畫性能。
附圖說明
圖1為一個實施例中動畫性能檢測方法的流程圖;
圖2為一個實施例中動畫性能檢測方法的應用界面示意圖;
圖3為一個實施例中動畫性能檢測系統的結構示意圖;
圖4為另一個實施例中動畫性能檢測系統的結構示意圖;
圖5為另一個實施例中動畫性能檢測系統的結構示意圖。
具體實施方式
如圖1所示,在一個實施例中,提供了一種動畫性能的檢測方法,該包括以下步驟:
步驟110,獲取動畫播放舞臺中的待檢測動畫的數量。
本實施例中,獲取相同的待檢測動畫在動畫播放舞臺中同時播放的數量。其中,動畫播放舞臺為動畫運行、展示的舞臺,可以將待檢測動畫拖入動畫播放舞臺中運行,檢測其性能。待檢測動畫為同一個待檢測動畫,不同數量的相同動畫在動畫播放舞臺中同時播放其顯示的效果和性能有所不同,一般數量越小的動畫播放越流暢。
步驟120,根據待檢測動畫的數量獲取待檢測動畫的最大同屏數量。
最大同屏數量是指若干個相同的動畫以統一的寬高,在空白的Flash播放器中同時播放,在保證其不產生跳幀的狀態下所能達到的最大動畫數量。所述寬高可以是任意寬高,優選為80*80。一般動畫面積越大,需要計算的點越多,計算量會越大。跳幀也叫丟幀,產生跳幀的原因可能是動畫的某一幀的粒子效果或者特效做的過多,影響了終端的計算時間,使得終端的顯示器刷新率跟不上遊戲的幀率,只能捨棄這一幀的畫面,這種現象表現在遊戲裡就是跳幀。跳幀越多在動畫播放中的表現為越不連貫和卡頓,與其相反,滿幀表示動畫可以流暢的運行,即在運行過程中不產生跳幀。如果知道了動畫在播放過程中會在某一幀產生跳幀,則動畫設計人員可以重點優化這一幀的前後效果,以使得動畫具有更好的性能。
本實施例中,通過將不同數量的待檢測動畫在動畫播放舞臺中同時播放,根據不同數量的待檢測動畫同時播放的性能來確定待檢測動畫的最大同屏數量。
步驟130,獲取待檢測動畫的本機最低通過同屏數量。
具體的,動畫的本機最低通過同屏數量是判斷該動畫是否合格的最低閥值,如果某一動畫在終端上運行的最大同屏數量不能達到在該終端上的最低通過同屏數量(即本機最低通過同屏數量),則認定該動畫的性能是不合格的。
在本實施例中,本機最低通過同屏數量是在本機首次運行檢測軟體時,通過檢測軟體中預置的標準動畫來檢測出,並存儲到本機中。在非首次運行檢測 軟體時,可直接獲取本機中存儲的本機最低通過同屏數量。
步驟140,判斷待檢測動畫的最大同屏數量是否達到待檢測動畫的本機最低通過同屏數量。若是,則判斷檢測通過,否則,檢測不通過。
本實施例中,當檢測出待檢測動畫的最大同屏數量後,將待檢測動畫的最大同屏數量和其本機最低通過同屏數量進行對比,如果待檢測動畫的最大同屏數量大於或等於其本機最低通過同屏數量,則說明待測動畫性能可以滿足要求,即判斷其檢測通過,否則,判斷其檢測不通過,並顯示檢測結果。
上述動畫性能的檢測方法,由於動畫的最大同屏數量可以用來表徵動畫的性能,根據待檢測動畫的數量獲取到待檢測動畫的最大同屏數量,當待檢測動畫的最大同屏數量達到本機最低通過同屏數量,則動畫性能的檢測通過。從而能夠快速準確的檢測出動畫性能。
在一個實施例中,根據待檢測動畫的數量獲取待檢測動畫的最大同屏數量的步驟,包括:根據待檢測動畫的數量檢測待檢測動畫是否存在跳幀,若是,則減少待檢測動畫的數量,否則,則增加待檢測動畫的數量;其中,每次減少或增加的待檢測動畫的個數是上一次減少或者增加的待檢測動畫的個數的一半;所述最大同屏數量為減少或增加一個待檢測動畫時對應的待檢測動畫的數量。
如果某一數量下的動畫同時運行產生了跳幀,則說明在該數量下的動畫在數量同時運行會產生丟幀、卡頓的現象,使得動畫播放體驗不好,為保證其流暢運行,故而需要減少動畫的數量;相反,如果不產生跳幀,則說明其還可能具備更多的數量同時不放也不產生跳幀,故而需要增加該動畫的數量,繼續檢測,尋找其最大同屏數量。
本實施例中,減少或增加的動畫數量按照二分法的原則來確定,即本次減少或增加的動畫數量是上一次減少或增加的動畫數量的一半,直到減少或增加的動畫數量為1為止。根據上一次數量的動畫在同時播放過程是否產生跳幀來決定本次動畫的數量是減少還是增加,當停止減少或增加動畫數量後,該動畫的最終數量即為其最大同屏數量。其中,所提到的數量均為正整數,若不為正 整數,則對其取整,優選為四捨五入取整。
採用這種二分法的減少或增加數量的方法,可以以最少的測試次數,準確測出待檢測動畫的最大同屏數量。
進一步的,在一個實施例中,根據待檢測動畫的數量獲取待檢測動畫的最大同屏數量的步驟,還包括:
當減少或增加一個待檢測動畫後,若檢測到待檢測動畫不存在跳幀,則待檢測動畫的最大同屏數量為減少或增加一個待檢測動畫後對應的待檢測動畫數量,否則,為減少或增加一個待檢測動畫後對應的待檢測動畫數量減1。
本實施例中,若最後減少了1個動畫數量,說明減少1個動畫數量前的檢測結果為跳幀,動畫在該數量下運行不能達到要求,對其進行減少數量後的跳幀檢測,若不產生跳幀,說明其最大同屏數量為減少後的動畫數量,否則,為減少後的動畫數量再減1個的數量;若最後增加了1個動畫數量,說明增加1個動畫數量前的檢測結果為滿幀,動畫在該數量下運行能夠達到要求,對其進行增加數量後的跳幀檢測,若不產生跳幀,說明其最大同屏數量為增加後的動畫數量,否則,為增加後的動畫數量再減1個的數量。
通過根據對減少或增加1個待檢測動畫數量後的跳幀檢測結果來確定待檢測動畫的最大同屏數量,可以更加精確的檢測出檢測動畫的最大同屏數量。
在一個實施例中,所述動畫性能檢測方法還包括:計算待檢測動畫的本機最低通過同屏數量,其中,所述待檢測動畫的本機最低通過同屏數量為本機算力與測試機算力的比值乘以預設的標準動畫在測試機上應達到的最低通過同屏數量後進行取整的數值;其中,本機算力是標準動畫在本機上檢測得到的最大同屏數量,測試機算力是標準動畫在測試機上檢測得到的最大同屏數量。
當首次測試時,檢測軟體自動進入測試算力模式,即自動加載預置的標準動畫。按照前述步驟,檢測出預置的標準動畫在所使用的檢測終端上的最大同屏數量,稱之為本機算力,並將其存儲。非首次測試時,直接調用在當前檢測終端上首次使用所存儲的數據並顯示,無需重複檢測。
測試機算力為標準動畫在測試機上檢測得到的最大同屏數量,測試機上應達到的最低通過同屏數量為給定的經驗值,其一般由有經驗的設計師或開發工程師根據實際情況判斷給定。
當獲取到本機算力、測試機算力和測試機上應達到的最低通過同屏數量後,待檢測動畫的本機最低通過同屏數量為本機算力與測試機算力的比值乘以預設的標準動畫在測試機上應達到的最低通過同屏數量後進行取整的數值。
如圖2右側下框中所示,顯示了待檢測動畫的本機算力為28、本機最低通過同屏數量為57、測試機算力為27、測試機上應達到的最低通過同屏數量為55,其中本機最低通過同屏數量即是根據28÷27×55而得到(≈57)。
在一個實施例中,還可以通過用戶界面顯示每次減少或增加的待檢測動畫的數量、是否存在跳幀、待檢測動畫的最大同屏數量、本機最低通過同屏數量以及檢測通過或不通過的檢測結果。
如圖2所示的界面中,左邊的框圖部分即為動畫播放舞臺,可以將動畫拖入舞臺中進行播放檢測其性能,當將動畫託放進動畫播放舞臺中運行後,其動畫的個數可以設有一個初始值,初始值可以為任意值。由於一般規格的動畫在保證滿幀運行狀態下,其數量很難達到250個,可以將初始值優選為250個。
本實施例中,用戶界面可以顯示當前幀頻、動畫播放狀態以及動畫個數,圖2的右側方框顯示:「當前幀頻31/30丨狀態:流暢丨Mc個數:252」,其中,當前幀頻中的31表示每秒實時幀頻,30表示舞臺幀率,舞臺幀率和終端設備的配置有關;動畫播放狀態有「跳幀」和「流暢」兩種狀態,Mc(Movieclip)即為動畫,表示測試結束後舞臺中的動畫數量為252個。
本實施例中,如圖2右側中間框中所示,用戶界面顯示了動畫播放舞臺中的初始動畫數量和每次減少或增加的動畫數量,並檢測顯示了這些數量動畫同時運行是否存在跳幀以及在第幾幀跳幀的情況,並在檢測完畢給出了動畫的最大同屏數量和其在本機最低通過同屏數量以及檢測結果。
動畫設計人員根據顯示的檢測結果可以直觀了解到動畫的性能。同時,動畫跳幀情況的記錄和顯示還可以使動畫設計人員更加直觀清楚了解到動畫的性 能並方便對動畫做出改進。如圖2中顯示記錄了待檢測動畫分別在第9、13、18、27、56、79幀跳幀,動畫設計人員可以根據此信息可以重點優化這幾幀前後效果,以使待檢測動畫具有更高的性能。
應當注意的是,當在檢測過程中,終端設備存在其他應用運行時,會使得檢測產生誤差,並對檢測出的最大同屏數量造成影響。一般對質量越好的動畫造成的誤差越大,但不會影響最終的檢測結果,即判斷待檢測動畫的性能是否通過。
在另一個實施例中,當測試完畢之後,還可以獲取用戶輸入的減少或增加所述動畫播放舞臺中的待檢測動畫的數量,根據用戶輸入的數量減少或增加所述動畫播放舞臺中的待檢測動畫的數量。如圖2右側上框中顯示有數字輸入框和「增加」及「減少」按鈕,可以在數字輸入框中輸入需要減少或增加的待檢測動畫的數量,並按減少或增加按鈕,對應來減少或增加待檢測動畫的數量,並按照減少或增加後的待檢測動畫的數量作為初始舞臺數量按照上述方法再次測試待檢測動畫的性能。
有可能多次檢測的數據會有不同,例如第一次檢測完畢後,得到的信息包括:檢測通過,待檢測動畫的最大同屏數量為251,分別在第9、13、18、27、56、79跳幀,當前動畫數量為252。當手動增加了148個待檢測動畫後,即舞臺中的初始動畫數量變為了400,開始第二次檢測檢,測完畢後得到的數據包括:檢測通過,且待檢測動畫的最大同屏數量為251,且分別在第9、13、18、27、56、59、79跳幀,當前動畫數量為250。用戶可以結合多次得到的檢測結果自行判斷選取更為準確的檢測數據。
在一個實施例中,如圖3所示,提供了一種動畫性能檢測系統,包括:
最大同屏數量檢測模塊310,用於獲取動畫播放舞臺中的待檢測動畫的數量;根據所述待檢測動畫的數量獲取所述待檢測動畫的最大同屏數量。
動畫性能檢測模塊320,用於獲取待檢測動畫的本機最低通過同屏數量,將所述待檢測動畫的最大同屏數量與所述待檢測動畫的本機最低通過同屏數量進 行對比,判斷所述待檢測動畫的最大同屏數量是否達到所述待檢測動畫的本機最低通過同屏數量,若是,則判斷所述待檢測動畫檢測通過,否則,判斷檢測不通過。
在一個實施例中,最大同屏數量檢測模塊310還用於根據所述待檢測動畫的數量檢測所述待檢測動畫是否存在跳幀,若是,則減少所述待檢測動畫的數量,否則,則增加所述待檢測動畫的數量;其中,每次減少或增加的待檢測動畫的個數是上一次減少或者增加的待檢測動畫的個數的一半;所述最大同屏數量為減少或增加一個待檢測動畫時對應的待檢測動畫的數量。
進一步的,在一個實施例中,所述最大同屏數量檢測模塊310還用於當減少或增加一個待檢測動畫後,若檢測到所述待檢測動畫不存在跳幀,則所述待檢測動畫的最大同屏數量為所述減少或增加一個待檢測動畫後對應的待檢測動畫數量,否則,為所述減少或增加一個待檢測動畫後對應的待檢測動畫的數量減1。
在一個實施例中,如圖4所示,所述系統還包括:
本機最低通過同屏數量計算模塊330,用於計算待檢測動畫的本機最低通過同屏數量,其中,所述待檢測動畫的本機最低通過同屏數量為本機算力與測試機算力的比值乘以預設的標準動畫在測試機上應達到的最低通過同屏數量後進行取整的數值;其中,所述本機算力是所述標準動畫在本機上檢測得到的最大同屏數量,所述測試機算力是所述標準動畫在測試機上檢測得到的最大同屏數量。
進一步的,在一個實施例中,如圖5所示,所述系統還包括:
顯示模塊340,用於通過用戶界面顯示每次減少或增加的待檢測動畫的數量、是否存在跳幀、待檢測動畫的最大同屏數量、本機最低通過同屏數量以及檢測通過或不通過的檢測結果。
以上所述實施例的各技術特徵可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術特徵所有可能的組合都進行描述,然而,只要這些技術特徵的組合不存在矛盾,都應當認為是本說明書記載的範圍。
以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但並不能因此而理解為對發明專利範圍的限制。應當指出的是,對於本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬於本發明的保護範圍。因此,本發明專利的保護範圍應以所附權利要求為準。