一種動畫渲染方法及裝置的製作方法
2023-05-28 04:01:06 2
專利名稱:一種動畫渲染方法及裝置的製作方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種動畫渲染方法及裝置。
背景技術:
終端在播放動畫時,為了保證動畫的平滑顯示,需要採用一定的渲染幀率對動畫進行渲染。在現有技術中,終端保存了預先設定的渲染幀率,終端在渲染動畫時,採用該預先設定的渲染幀率對動畫進行渲染,也即,即使終端播放不同的動畫,但是終端渲染不同的動畫時所採用的渲染幀率是相同的,都是該預先設定的渲染幀率。眾所周知,對動畫進行渲染時所採用的渲染幀率越高,動畫的顯示質量越高,所需 要的渲染資源也就越多,反之,對動畫進行渲染時所採用的渲染幀率越低,動畫的顯示質量越低,所需要的渲染資源也就越少。然而,採用現有技術的方法渲染動畫時,對於當前播放的動畫來說,如果該動畫實際所需要的渲染幀率低於預先設定的渲染幀率,則終端仍然採用該預先設定的渲染幀率對該動畫進行渲染,就會導致渲染資源的浪費。而如果該動畫實際所需要的渲染幀率高於預先設定的渲染幀率,則終端仍然採用該預先設定的渲染幀率對該動畫進行渲染,也會導致該動畫的顯示質量下降。
發明內容
本發明實施例提供一種動畫渲染方法及裝置,用以解決現有技術中的動畫渲染方法浪費渲染資源以及降低動畫的顯示質量的問題。本發明實施例提供的一種動畫渲染方法,包括在渲染動畫的過程中,對所述動畫中包含的每個時間線當前請求的渲染幀率進行監控;在根據監控到的每個時間線當前請求的渲染幀率,確定需要改變當前渲染所述動畫所採用的渲染幀率時,確定當前渲染所述動畫所需要的渲染幀率;採用確定的當前渲染所述動畫所需要的渲染幀率渲染所述動畫。本發明實施例提供的一種動畫渲染裝置,包括監控模塊,用於在渲染動畫的過程中,對所述動畫中包含的每個時間線當前請求的渲染幀率進行監控;確定模塊,用於在根據監控到的每個時間線當前請求的渲染幀率,確定需要改變當前渲染所述動畫所採用的渲染幀率時,確定當前渲染所述動畫所需要的渲染幀率;渲染模塊,用於採用確定的當前渲染所述動畫所需要的渲染幀率渲染所述動畫。本發明實施例提供一種動畫渲染方法及裝置,該方法終端確定需要改變當前渲染動畫所採用的渲染幀率時,確定當前渲染該動畫所需要的渲染幀率,並採用確定當前渲染該動畫所需要的渲染幀率渲染動畫。通過上述方法,終端在渲染動畫的過程中,可以實時的採用當前渲染該動畫所需要的渲染幀率對該動畫進行渲染,因此在渲染所需要的渲染幀率較低的動畫時,可以節省渲染資源,在渲染所需要的渲染幀率較高的動畫時,也可以保證該動畫的顯示質量。
圖I為本發明實施例提供的動畫渲染的過程;圖2為本發明實施例提供的動畫渲染裝置結構示意圖。
具體實施例方式由於現有技術中終端無論渲染何種動畫,均採用預先設定的渲染幀率對動畫進行渲染,因此如果該動畫所需要的渲染幀率較低,則會浪費渲染資源,如果該動畫所需要的渲染幀率較高,又會導致該動畫的顯示質量下降。本發明實施例終端在渲染動畫的過程中,如果確定需要改變當前渲染該動畫所採用的渲染幀率,則確定當前渲染該動畫所需要的渲染 幀率,並採用確定的當前渲染該動畫所需要的渲染幀率渲染動畫,因此在渲染所需要的渲染幀率較低的動畫時,可以節省渲染資源,在渲染所需要的渲染幀率較高的動畫時,也可以保證該動畫的顯示質量。下面結合說明書附圖,對本發明實施例進行詳細描述。圖I為本發明實施例提供的動畫渲染的過程,具體包括以下步驟SlOl :在渲染動畫的過程中,對該動畫中包含的每個時間線當前請求的渲染幀率進行監控。在本發明實施例中,終端在渲染動畫時,對該動畫中包含的每個時間線當前請求的渲染幀率進行實時的監控。S102 :在根據監控到的每個時間線當前請求的渲染幀率,確定需要改變當前渲染該動畫所採用的渲染幀率時,確定當前渲染該動畫所需要的渲染幀率。在本發明實施例中,終端可以根據監控到的每個時間線當前請求的渲染幀率,確定出是否需要改變當前渲染該動畫所採用的渲染幀率,當確定需要改變當前渲染該動畫所採用的渲染幀率時,則確定當前渲染該動畫所需要的渲染幀率。S103 :採用確定的當前渲染該動畫所需要的渲染幀率渲染該動畫。通過上述方法,終端在渲染動畫時,可以實時對渲染該動畫所採用的渲染幀率進行監控,當確定需要改變渲染幀率時,確定當前所需要的渲染幀率,並採用確定的當前所需要的渲染幀率渲染該動畫,相比於現有技術中採用固定不變的渲染幀率對動畫進行渲染的方法,採用本發明實施例提供的上述動畫渲染方法,在對所需要的渲染幀率較低的動畫進行渲染時,可以節省渲染資源,在對所需要的渲染幀率較高的動畫進行渲染時,也可以保證該動畫的顯示質量。在實際應用中,一個動畫由若干個畫面元素構成。通常的,動畫中包含一個或幾個時間線,每個時間線控制著一個或幾個畫面元素,在渲染動畫時,將每個畫面元素按照其所屬的每個時間線進行顯示。由於根據實際需要,該動畫中的每個時間線下的畫面元素所需要的渲染幀率也會有所不同,因此在渲染動畫時,不同的時間線為其控制的畫面元素所請求的渲染幀率有所不同。進一步的,同一個時間線下的畫面元素在該時間線中不同的時段所需要的渲染幀率也會有所不同,因此在播放動畫時,同一個時間線在不同的播放時間為其控制的畫面元素所請求的渲染幀率也有所不同。而為了保證動畫的顯示質量,在任一時刻渲染動畫時,就需要採用該動畫中當前所有時間線所請求的渲染幀率中的最大渲染幀率對該動畫進行渲染。因此,本發明實施例中終端確定需要改變當前渲染該動畫所採用的渲染幀率的方法具體為當監控到至少一個時間線請求的渲染幀率發生變化時,確定每個時間線請求的渲染幀率中的最大渲染幀率,如果確定出的最大渲染幀率與當前渲染該動畫所採用的渲染幀率不同,則確定需要改變當前渲染該動畫所採用的渲染幀率。在後續的步驟中,終端則將確定出的最大渲染幀率確定為當前渲染該動畫所需要的渲染幀率,並採用確定的當前渲染該動畫所需要的渲染幀率(也即確定的最大渲染幀率)對該動畫進行渲染。例如,某動畫包含3條時間線,分別為時間線A、時間線B、時間線C。在渲染該動畫的前20秒時,這3條時間線請求的渲染幀率為時間線A請求渲染幀率20、時間線B請求渲染幀率30、時間線C請求渲染幀率O。因此,終端在渲染該動畫的前20秒時,採用3條時間線所請求的最大渲染幀率30 (時間線B請求的渲染幀率)對該動畫進行渲染。在渲染 該動畫的第21秒時,終端仍在採用渲染幀率30對該動畫進行渲染,但此時時間線C請求的渲染幀率變為50,則終端監測到時間線C請求的渲染幀率發生變化,確定這3條時間線請求的渲染幀率中的最大渲染幀率,確定的最大渲染幀率即為50 (時間線C請求的渲染幀率),進而確定當前確定出的最大渲染幀率50與當前渲染該動畫所採用的渲染幀率30不同,因此確定需要改變當前渲染的動畫的渲染幀率。在後續的步驟中,終端採用渲染幀率50對該動畫進行渲染。在本發明實施例中,為了使終端便於對渲染的動畫中每個時間線請求的渲染幀率進行監控,終端在渲染該動畫時,建立幀率控制列表,並在幀率控制列表中記錄當前渲染該動畫時,該動畫中的每個畫面元素請求的幀率,以進行監控。具體的,終端在渲染動畫的過程中,根據該動畫的描述信息中包含的該動畫中的畫面元素與幀率控制標識的對應關係,建立幀率控制標識列表,其中,建立的幀率控制標識列表中包含該動畫中所有的畫面元素對應的幀率控制標識,針對該動畫中的畫面元素,確定當前渲染該動畫時該畫面元素所在的時間線請求的渲染幀率,將確定的渲染幀率記錄到該幀率控制標識列表中,並建立記錄的渲染幀率與該幀率控制標識列表中該畫面元素對應的幀率控制標識的對應關係。其中,該動畫的描述信息具體可以為基於可擴展標記語言(Extensible Markup Language, XML)的動畫描述信息。在監控每個時間線請求的渲染幀率時,則可以對該幀率控制標識列表中的每個幀率控制標識對應的渲染幀率進行監控,當監控到該幀率控制標識列表中的至少一個幀率控制標識對應的渲染幀率發生變化時,則確定監控到該動畫中的至少一個時間線請求的渲染幀率發生變化。例如,假設該動畫包括畫面元素A、畫面元素B、畫面元素C這3個畫面元素,因此建立的幀率控制標識列表可以如表I所示。
幀率控制標識渲染幀率
權利要求
1.一種動畫渲染方法,其特徵在於,包括 在渲染動畫的過程中,對所述動畫中包含的每個時間線當前請求的渲染幀率進行監控; 在根據監控到的每個時間線當前請求的渲染幀率,確定需要改變當前渲染所述動畫所採用的渲染幀率時,確定當前渲染所述動畫所需要的渲染幀率; 採用確定的當前渲染所述動畫所需要的渲染幀率渲染所述動畫。
2.如權利要求I所述的方法,其特徵在於,確定需要改變當前渲染所述動畫所採用的渲染幀率,具體包括 當監控到至少一個時間線請求的渲染幀率發生變化時,確定每個時間線請求的渲染幀率中的最大渲染幀率; 如果確定出的最大渲染幀率與當前渲染所述動畫所採用的渲染幀率不同,則確定需要改變當前渲染所述動畫所採用的渲染幀率。
3.如權利要求2所述的方法,其特徵在於,確定當前渲染所述動畫所需要的渲染幀率,具體包括 將確定出的最大渲染幀率確定為當前渲染所述動畫所需要的渲染幀率。
4.如權利要求2所述的方法,其特徵在於,在渲染所述動畫的過程中,所述方法還包括 根據所述動畫的描述信息中包含的所述動畫中的畫面元素與幀率控制標識的對應關係,建立幀率控制標識列表,其中,建立的幀率控制標識列表中包含所述動畫中所有的畫面元素對應的幀率控制標識; 針對所述動畫中的畫面元素,確定當前渲染所述動畫時該畫面元素所在的時間線請求的渲染幀率,將確定的渲染幀率記錄到所述幀率控制標識列表中,並建立記錄的渲染幀率與所述幀率控制標識列表中該畫面元素對應的幀率控制標識的對應關係; 監控到至少一個時間線請求的渲染幀率發生變化,具體包括 監控到所述幀率控制標識列表中的至少一個幀率控制標識對應的渲染幀率發生變化。
5.如權利要求4所述的方法,其特徵在於,渲染所述動畫之前,所述方法還包括 針對所述動畫中的時間線,預先將時間線劃分為若干個子時間線,並為劃分的每個子時間線設定渲染幀率; 確定當前渲染所述動畫時該畫面元素所在的時間線請求的渲染幀率,具體包括確定當前渲染所述動畫的渲染時間,確定所述渲染時間在該畫面元素所在的時間線中所屬的子時間線,將預先為確定的該子時間線設定的渲染幀率確定為當前渲染所述動畫時該畫面元素所在的時間線請求的渲染幀率。
6.一種動畫渲染裝置,其特徵在於,包括 監控模塊,用於在渲染動畫的過程中,對所述動畫中包含的每個時間線當前請求的渲染幀率進行監控; 確定模塊,用於在根據監控到的每個時間線當前請求的渲染幀率,確定需要改變當前渲染所述動畫所採用的渲染幀率時,確定當前渲染所述動畫所需要的渲染幀率; 渲染模塊,用於採用確定的當前渲染所述動畫所需要的渲染幀率渲染所述動畫。
7.如權利要求6所述的裝置,其特徵在於,所述確定模塊具體用於,當所述監控模塊監控到至少一個時間線請求的渲染幀率發生變化時,確定每個時間線請求的渲染幀率中的最大渲染幀率,如果確定出的最大渲染幀率與當前渲染所述動畫所採用的渲染幀率不同,則確定需要改變當前渲染所述動畫所採用的渲染幀率。
8.如權利要求7所述的裝置,其特徵在於,所述確定模塊具體用於,將確定出的最大渲染幀率確定為當前渲染所述動畫所需要的渲染幀率。
9.如權利要求7所述的裝置,其特徵在於,所述監控模塊還用於,在渲染所述動畫的過程中,根據所述動畫的描述信息中包含的所述動畫中的畫面元素與幀率控制標識的對應關係,建立幀率控制標識列表,其中,建立的幀率控制標識列表中包含所述動畫中所有的畫面元素對應的巾貞率控制標識;針對所述動畫中的畫面元素,確定當前渲染所述動畫時該畫面元素所在的時間線請求的渲染幀率,將確定的渲染幀率記錄到所述幀率控制標識列表中,並建立記錄的渲染幀率與所述幀率控制標識列表中該畫面元素對應的幀率控制標識的對應關係;在監控到所述幀率控制標識列表中的至少一個幀率控制標識對應的渲染幀率發生變化時,確定監控到至少一個時間線請求的渲染幀率發生變化。
10.如權利要求9所述的裝置,其特徵在於,所述監控模塊具體用於,確定當前渲染所述動畫的渲染時間,根據預先將所述動畫中的時間線劃分的若干個子時間線,確定所述渲染時間在該畫面元素所在的時間線中所屬的子時間線,並根據預先為劃分的每個子時間線設定的渲染幀率,將預先為確定的該子時間線設定的渲染幀率確定為當前渲染所述動畫時該畫面元素所在的時間線請求的渲染幀率。
全文摘要
本發明公開了一種動畫渲染方法及裝置,用以解決現有技術中的動畫渲染方法浪費渲染資源以及降低動畫的顯示質量的問題,該方法終端確定需要改變當前渲染動畫所採用的渲染幀率時,確定當前渲染該動畫所需要的渲染幀率,並採用確定當前渲染該動畫所需要的渲染幀率渲染動畫。通過上述方法,終端在渲染動畫的過程中,可以實時的採用當前渲染該動畫所需要的渲染幀率對該動畫進行渲染,因此在渲染所需要的渲染幀率較低的動畫時,可以節省渲染資源,在渲染所需要的渲染幀率較高的動畫時,也可以保證該動畫的顯示質量。
文檔編號G06T13/00GK102831630SQ20121026288
公開日2012年12月19日 申請日期2012年7月26日 優先權日2012年7月26日
發明者許瑞軍 申請人:北京小米科技有限責任公司