本申請涉及計(jì)算機(jī),具體涉及一種虛擬對象搖動控制方法、裝置、電子設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、游戲動畫系統(tǒng)是游戲中對表現(xiàn)力影響最大的系統(tǒng)之一,隨著計(jì)算機(jī)技術(shù)的發(fā)展,用戶對于游戲動畫效果的要求也越來越高。
2、目前,通常通過精靈動畫系統(tǒng)或剛性層階式動畫系統(tǒng)來實(shí)現(xiàn)游戲動畫效果。其中,精靈動畫是二維的動畫效果,通常用于二維游戲,或距離較遠(yuǎn)的遠(yuǎn)景部分。針對需要控制的虛擬對象三維模型,通常基于剛性層階式動畫系統(tǒng)進(jìn)行控制以實(shí)現(xiàn)動畫效果。具體的,將虛擬對象的三維模型劃分為多個(gè)不會發(fā)生形變(包括縮放)的剛性物體,然后分別驅(qū)動每一個(gè)剛性物體進(jìn)行運(yùn)動。通過這種方案對虛擬對象進(jìn)行搖動控制時(shí)靈活性較低,獲得的動畫效果較差,且無法實(shí)現(xiàn)組合物體中各個(gè)個(gè)體配合搖動的動畫效果,影響用戶的觀看體驗(yàn)。
技術(shù)實(shí)現(xiàn)思路
1、本申請實(shí)施例提供一種虛擬對象搖動控制方法、裝置、電子設(shè)備和存儲介質(zhì),可以提高對虛擬對象進(jìn)行搖動控制時(shí)的靈活性,提升動畫效果,且能夠?qū)崿F(xiàn)虛擬對象組合中各個(gè)虛擬對象配合搖動的動畫效果,提升用戶的觀看體驗(yàn)。
2、第一方面,本申請實(shí)施例提供一種虛擬對象搖動控制方法,包括:
3、獲取虛擬對象組合中各個(gè)虛擬對象在第一uv坐標(biāo)系中的uv貼圖;
4、對各上述虛擬對象的uv貼圖進(jìn)行壓縮,獲得各上述虛擬對象對應(yīng)的uv線條;
5、根據(jù)上述虛擬對象組合中各上述虛擬對象的排列位置,將各上述uv線條保存至第二uv坐標(biāo)系中;
6、根據(jù)上述第二uv坐標(biāo)系中uv線條的橫坐標(biāo)以及時(shí)間參數(shù),通過預(yù)設(shè)的周期函數(shù),得到各上述uv線條的位移偏移量,其中,上述位移偏移量在上述周期函數(shù)的一個(gè)周期內(nèi)隨時(shí)間往復(fù)變化;
7、基于上述uv線條在上述第二uv坐標(biāo)系中的縱坐標(biāo)對上述位移偏移量進(jìn)行調(diào)整,得到各上述uv線條的調(diào)整后位移偏移量,其中,每一上述uv線條中各高度上的調(diào)整后位移偏移量隨高度降低而減小,每一上述uv線條中最低高度處的調(diào)整后位移偏移量為0;
8、根據(jù)上述uv線條各高度上的調(diào)整后位移偏移量,控制上述uv線條的上述高度對應(yīng)的虛擬對象的模型頂點(diǎn)進(jìn)行位移。
9、第二方面,本申請實(shí)施例提供一種虛擬對象搖動控制裝置,包括:
10、貼圖獲取模塊,用于獲取虛擬對象組合中各個(gè)虛擬對象在第一uv坐標(biāo)系中的uv貼圖;
11、貼圖處理模塊,用于對各上述虛擬對象的uv貼圖進(jìn)行壓縮,獲得各上述虛擬對象對應(yīng)的uv線條;
12、uv線條保存模塊,用于根據(jù)上述虛擬對象組合中各上述虛擬對象的排列位置,將各上述uv線條保存至第二uv坐標(biāo)系中;
13、位移偏移量計(jì)算模塊,用于根據(jù)上述第二uv坐標(biāo)系中uv線條的橫坐標(biāo)以及時(shí)間參數(shù),通過預(yù)設(shè)的周期函數(shù),得到各上述uv線條的位移偏移量,其中,上述位移偏移量在上述周期函數(shù)的一個(gè)周期內(nèi)隨時(shí)間往復(fù)變化;
14、位移偏移量調(diào)整模塊,用于基于上述uv線條在上述第二uv坐標(biāo)系中的縱坐標(biāo)對上述位移偏移量進(jìn)行調(diào)整,得到各上述uv線條的調(diào)整后位移偏移量,其中,每一上述uv線條中各高度上的調(diào)整后位移偏移量隨高度降低而減小,每一上述uv線條中最低高度處的調(diào)整后位移偏移量為0;
15、控制模塊,用于根據(jù)上述uv線條各高度上的調(diào)整后位移偏移量,控制上述uv線條的上述高度對應(yīng)的虛擬對象的模型頂點(diǎn)進(jìn)行位移。
16、第三方面,本申請實(shí)施例還提供一種電子設(shè)備,包括存儲器,存儲器存儲有多條指令;處理器從存儲器中加載指令,以執(zhí)行本申請實(shí)施例所提供的任一種虛擬對象搖動控制方法的步驟。
17、第四方面,本申請實(shí)施例還提供一種計(jì)算機(jī)可讀存儲介質(zhì),計(jì)算機(jī)可讀存儲介質(zhì)存儲有多條指令,指令適于處理器進(jìn)行加載,以執(zhí)行本申請實(shí)施例所提供的任一種虛擬對象搖動控制方法的步驟。
18、采用本申請實(shí)施例的方案,可以獲取虛擬對象組合中各個(gè)虛擬對象在第一uv坐標(biāo)系中的uv貼圖;對各虛擬對象的uv貼圖進(jìn)行壓縮,獲得各虛擬對象對應(yīng)的uv線條;根據(jù)虛擬對象組合中各虛擬對象的排列位置,將各uv線條保存至第二uv坐標(biāo)系中;從而根據(jù)第二uv坐標(biāo)系中uv線條的橫坐標(biāo)以及時(shí)間參數(shù),通過預(yù)設(shè)的周期函數(shù),得到各uv線條的位移偏移量;由于橫坐標(biāo)的逐漸變化,各個(gè)不同的uv線條獲得具有一定差異但整體呈現(xiàn)一定規(guī)律的位移偏移量;且一個(gè)uv線條的位移偏移量在周期函數(shù)的一個(gè)周期內(nèi)隨時(shí)間往復(fù)變化;進(jìn)一步的,基于uv線條的縱坐標(biāo)對各個(gè)高度的位移偏移量進(jìn)行調(diào)整,各uv線條的調(diào)整后位移偏移量隨uv線條的高度降低而減小,每一uv線條中最低高度處的調(diào)整后位移偏移量為0;由此,可以實(shí)現(xiàn)越接近底部的位置搖動的幅度越小,且最底端(與其他虛擬對象的接觸位置)固定的搖動效果;根據(jù)uv線條各高度上的調(diào)整后位移偏移量,控制上述uv線條的上述高度對應(yīng)的虛擬對象的模型頂點(diǎn)進(jìn)行位移;可以提高對虛擬對象進(jìn)行搖動控制時(shí)的靈活性,提升動畫效果,且能夠?qū)崿F(xiàn)虛擬對象組合中各個(gè)虛擬對象個(gè)體之間相互配合的搖動動畫效果,有利于提升用戶的觀看體驗(yàn)和游戲體驗(yàn)。
1.一種虛擬對象搖動控制方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的虛擬對象搖動控制方法,所述根據(jù)所述第二uv坐標(biāo)系中uv線條的橫坐標(biāo)以及時(shí)間參數(shù),通過預(yù)設(shè)的周期函數(shù),得到各所述uv線條的位移偏移量,包括:
3.根據(jù)權(quán)利要求2所述的虛擬對象搖動控制方法,其特征在于,所述根據(jù)所述第二uv坐標(biāo)系中uv線條的橫坐標(biāo)確定各所述uv線條的第一位移距離控制參數(shù),根據(jù)所述時(shí)間參數(shù)確定各所述uv線條的第二位移距離控制參數(shù),包括:
4.根據(jù)權(quán)利要求3所述的虛擬對象搖動控制方法,其特征在于,所述獲取位移循環(huán)頻率參數(shù)和位移速度參數(shù),包括:
5.根據(jù)權(quán)利要求1所述的虛擬對象搖動控制方法,其特征在于,在所述基于所述uv線條在所述第二uv坐標(biāo)系中的縱坐標(biāo)對所述位移偏移量進(jìn)行調(diào)整,得到各所述uv線條的調(diào)整后位移偏移量之前,所述方法還包括:
6.根據(jù)權(quán)利要求1至5任意一項(xiàng)所述的虛擬對象搖動控制方法,其特征在于,所述獲取虛擬對象組合中各個(gè)虛擬對象在第一uv坐標(biāo)系中的uv貼圖,包括:
7.根據(jù)權(quán)利要求1至5任意一項(xiàng)所述的虛擬對象搖動控制方法,其特征在于,所述對各所述虛擬對象的uv貼圖進(jìn)行壓縮,獲得各所述虛擬對象對應(yīng)的uv線條,包括:
8.一種虛擬對象搖動控制裝置,其特征在于,包括:
9.一種電子設(shè)備,其特征在于,包括存儲器和處理器;所述存儲器存儲有應(yīng)用程序,所述處理器用于運(yùn)行所述存儲器內(nèi)的應(yīng)用程序,以執(zhí)行權(quán)利要求1至7任一項(xiàng)所述的虛擬對象搖動控制方法中的步驟。
10.一種計(jì)算機(jī)可讀存儲介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲介質(zhì)存儲有多條指令,所述指令適于處理器進(jìn)行加載,以執(zhí)行權(quán)利要求1至7任一項(xiàng)所述的虛擬對象搖動控制方法中的步驟。