一種對2d控件實現(xiàn)3d轉(zhuǎn)場動畫的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及對2D (two-dimens1nal, 二維)控件實現(xiàn)3D (three-dimens1nal,三維)轉(zhuǎn)場動畫的方法、裝置和終端。
【背景技術(shù)】
[0002]目前,幾乎所有的智能終端都會涉及用戶界面的切換。隨著硬件技術(shù)的快速發(fā)展,相比智能終端發(fā)展的初期生硬的頁面切換,用戶界面的切換效果越來越豐富多彩。比如,在安卓Android操作系統(tǒng)中,存在很多種頁面的跳轉(zhuǎn),在用戶界面上點擊一個應(yīng)用時,則這個應(yīng)用會打開一個頁面,并且從中間外四周擴張,最后覆蓋原來的用戶界面。
[0003]通過這種轉(zhuǎn)場動畫可以使用戶界面在變化時具有豐富的動態(tài)效果及藝術(shù)過度效果,從而給用戶更好的觀看體驗?,F(xiàn)有技術(shù)中,用戶界面從當(dāng)前頁面到下一個頁面切換過程中,對當(dāng)前頁面消失的控件和/或下一個頁面出現(xiàn)的控件執(zhí)行的轉(zhuǎn)場動畫一般都是使用淡入淡出或者簡單平移等二維切換效果。不同頁面間的切換都是采用傳統(tǒng)的平面切換技術(shù),無法針對二維頁面平滑的實現(xiàn)三維的轉(zhuǎn)場動畫,用戶體驗感低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供了一種對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的方法、裝置及終端,能夠?qū)崿F(xiàn)對在轉(zhuǎn)場切換時的2D控件實現(xiàn)平滑的3D轉(zhuǎn)場動畫。
[0005]第一方面,本發(fā)明實施例提供了一種對2D控件實現(xiàn)2D轉(zhuǎn)場動畫的方法,包括:當(dāng)接收到對所述2D控件執(zhí)行3D轉(zhuǎn)場動畫的請求時,獲取所述2D控件的標識以及與所述2D控件對應(yīng)的3D動畫標識;根據(jù)所述2D控件標識,獲取所述2D控件在用戶界面上的2D控件位置、2D控件寬度、2D控件高度和2D控件的渲染圖像;根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型;將所述2D控件的渲染圖像映射到所述3D網(wǎng)格模型上;根據(jù)所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過3D變換來設(shè)置3D網(wǎng)格模型的初始位置和初始大??;從所述初始位置和初始大小開始執(zhí)行所述3D動畫標識對應(yīng)的3D動畫。
[0006]結(jié)合第一方面,在第一方面的第一種實施方式中,所述根據(jù)所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過3D變換來設(shè)置3D網(wǎng)格模型的初始位置和初始大小,具體為:所述根據(jù)所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過三維空間中的平移、旋轉(zhuǎn)、放大縮小或設(shè)置3D網(wǎng)格模型的頂點坐標的方法,使得3D網(wǎng)格模型渲染顯示的圖像在用戶界面上與所述2D控件重疊。
[0007]結(jié)合第一方面或第一方面的第一種實施方式,在第一方面的第二種實施方式中,所述3D動畫標識包括唯一標識3D動畫的字符串、枚舉類型或通用資源標識符。
[0008]結(jié)合第一方面或第一方面的第一種實現(xiàn)方式至第一方面第二種實現(xiàn)方式中任一實現(xiàn)方式,在第一方面的第三種實現(xiàn)方式中,所述根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型,具體為:根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型標識,再根據(jù)所述3D網(wǎng)格模型標識獲取保存在資源目錄中對應(yīng)的3D網(wǎng)格模型;或根據(jù)所述3D動畫標識,獲得預(yù)先設(shè)置的算法;根據(jù)所述預(yù)先設(shè)置的算法創(chuàng)建3D網(wǎng)格模型。
[0009]結(jié)合第一方面或第一方面的第一種實現(xiàn)方式至第一方面第三種實現(xiàn)方式中任一實現(xiàn)方式,在第一方面的第四種實現(xiàn)方式中,所述3D動畫為3D空間變換動畫和/或3D頂點變形動畫和/或淡入淡出動畫。
[0010]第二方面,本發(fā)明實施例還提供了一種對二維2D控件實現(xiàn)三維3D轉(zhuǎn)場動畫的裝置,包括:用戶界面模塊,用于向3D轉(zhuǎn)場動畫模塊發(fā)送對2D控件執(zhí)行3D轉(zhuǎn)場動畫的請求,其中,所述3D轉(zhuǎn)場動畫請求包括所述2D控件的2D控件標識和所述2D控對應(yīng)的3D動畫標識;3D轉(zhuǎn)場動畫模塊,用于根據(jù)用戶界面模塊發(fā)送的2D控件標識,獲取所述2D控件在用戶界面上的2D控件位置、2D控件高度、2D控件寬度以及2D控件的渲染圖像;根據(jù)用戶界面模塊發(fā)送的3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型;3D渲染模塊,用于將所述2D控件的渲染圖像映射到所述3D網(wǎng)格模型上;所述3D轉(zhuǎn)場動畫模塊,還用于根據(jù)所述用戶界面模塊返回的所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過3D變換,設(shè)置所述3D網(wǎng)格模型的初始位置和初始大?。粡乃龀跏嘉恢煤退龀跏即笮¢_始執(zhí)行對應(yīng)的3D動畫。
[0011]結(jié)合第二方面,在第二方面的第一種實現(xiàn)方式中,所述3D轉(zhuǎn)場動畫模塊,還用于根據(jù)所述用戶界面模塊返回的所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過3D變換,設(shè)置所述3D網(wǎng)格模型的初始位置和初始大小,具體為:3D轉(zhuǎn)場動畫模塊根據(jù)所述所述根據(jù)所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過三維空間中的平移、旋轉(zhuǎn)、放大縮小或設(shè)置3D網(wǎng)格模型的頂點坐標的方法,使得3D網(wǎng)格模型渲染顯示的圖像在用戶界面上與所述2D控件重疊。
[0012]結(jié)合第二方面或第二方面的第一種實現(xiàn)方式,在第二方面的第二種實現(xiàn)方式中,所述3D動畫標識是唯一標識3D動畫的字符串、枚舉類型或通用資源標識符。
[0013]結(jié)合第二方面或第二方面的第一種實現(xiàn)方式至第二方面第二種實現(xiàn)方式中任一實現(xiàn)方式,在第二方面的第三種實現(xiàn)方式中,所述3D轉(zhuǎn)場動畫模塊,用于根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型,具體為:根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型標識,再根據(jù)所述3D網(wǎng)格模型標識獲取保存在資源目錄中對應(yīng)的3D網(wǎng)格模型;或根據(jù)所述3D動畫標識,獲得預(yù)先設(shè)置的算法;根據(jù)所述預(yù)先設(shè)置的算法創(chuàng)建3D網(wǎng)格模型。
[0014]結(jié)合第二方面或第二方面的第一種實現(xiàn)方式至第二方面第三種實現(xiàn)方式中任一實現(xiàn)方式,在第二方面的第四種實現(xiàn)方式中,所述3D動畫為3D空間變換動畫和/或3D頂點變形動畫和/或淡入淡出動畫。
[0015]第三方面,本發(fā)明實施例還提供了一種對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的終端,包括:處理器、存儲器以及總線,所述處理器和所述存儲器通過所述總線進行通信;其中,所述存儲器中存有計算機可讀程序;所述處理器通過運行所述存儲器中的程序,以用于當(dāng)接收到對所述2D控件執(zhí)行3D轉(zhuǎn)場動畫的請求時,獲取所述2D控件的標識以及與所述2D控件對應(yīng)的3D動畫標識;根據(jù)所述2D控件標識,獲取所述2D控件在用戶界面上的2D控件位置、2D控件寬度、2D控件高度和2D控件的渲染圖像;根據(jù)所述3D動畫標識,獲取對應(yīng)的3D網(wǎng)格模型;將所述2D控件的渲染圖像映射到所述3D網(wǎng)格模型上;根據(jù)所述2D頁面位置、所述2D頁面寬度和所述2D頁面高度,通過3D變換來設(shè)置3D網(wǎng)格模型的初始位置和初始大??;從所述初始位置和初始大小開始執(zhí)行所述3D動畫標識對應(yīng)的3D動畫。
[0016]本發(fā)明實施例在接收到對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的請求時,終端可以實現(xiàn)三維的轉(zhuǎn)場動畫效果,并且通過設(shè)置3D網(wǎng)格模型合適的3D動畫初始值,使得3D網(wǎng)格模型渲染顯示的圖像與所述2D控件位置、2D控件寬度以及2D控件高度一致,從而所述3D網(wǎng)格模型渲染顯示的圖像在用戶界面上與所述2D控件重疊,解決了從2D頁面轉(zhuǎn)換到3D動畫時的“閃屏”問題,改善了用戶的體驗。
【附圖說明】
[0017]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1為本發(fā)明一實施例提供的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫方法的流程圖;
[0019]圖2為本發(fā)明一實施例提供的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的裝置結(jié)構(gòu)示意圖;
[0020]圖3為本發(fā)明一實施例提供的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫方法的流程圖;
[0021]圖4為本發(fā)明又一實施例提供的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫方法的流程圖;
[0022]圖5為本發(fā)明一實施例提供的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的終端結(jié)構(gòu)示意圖。
【具體實施方式】
[0023]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0024]本發(fā)明實施例中的對2D控件實現(xiàn)3D轉(zhuǎn)場動畫的方法可以實現(xiàn)在任一終端設(shè)備上,比如手機、智能電視、平板電腦、電子閱讀器、PDA (Personal Digital Assistant,個人數(shù)字助理)、P0S(Point of Sales,銷售終端)、車載電腦等終端設(shè)備。本發(fā)明實施例中,2D控件是指一個二維的平面圖形,可以接收用戶的輸入命令,比如,可以是一個平面按鈕或者平面布局。3D動畫是指使用3D空間或頂點變換技術(shù),實現(xiàn)三維空間中的平移、旋轉(zhuǎn)、放大縮小、扭曲等3D動畫效果。轉(zhuǎn)場動畫是指用戶界面從當(dāng)前頁面到下一個頁面切換過程中,對當(dāng)前頁面消失的控件和/或下一個頁面出現(xiàn)的控件執(zhí)行的銜接動畫。本發(fā)明實施例中,用戶可以通過按鍵或者觸屏等方式觸發(fā)2D控件,從