国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法及系統(tǒng)

      文檔序號(hào):40278600發(fā)布日期:2024-12-11 13:14閱讀:31來(lái)源:國(guó)知局
      一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法及系統(tǒng)

      本發(fā)明涉及游戲?qū)ぢ泛陀螒騽?dòng)畫領(lǐng)域,具體涉及一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法及系統(tǒng)。


      背景技術(shù):

      1、近年來(lái),隨著游戲行業(yè)的快速發(fā)展,游戲行業(yè)市場(chǎng)規(guī)模不斷擴(kuò)展,游戲用戶也指數(shù)級(jí)增長(zhǎng),成了許多人工作學(xué)習(xí)之余的消遣活動(dòng),不僅創(chuàng)造了很多就業(yè)崗位,還帶來(lái)了許多巨大的經(jīng)濟(jì)價(jià)值。而隨著游戲開發(fā)技術(shù)的提高以及游戲硬件設(shè)備的發(fā)展,游戲玩家們對(duì)于游戲的品質(zhì)要求越來(lái)越高,其中,游戲動(dòng)畫品質(zhì)是很重要的一塊,例如rockstar?san?diego工作室制作的《荒野大鏢客2》,日本游戲開發(fā)商from?software制作的《只狼:影逝二度》、《艾爾登法環(huán)》等游戲都以其流暢高效的動(dòng)畫表現(xiàn)和出眾的游戲玩法出名,吸引了大批的游戲玩家,如何使得動(dòng)畫有更流暢更高質(zhì)量的表現(xiàn),成為游戲開發(fā)中的重要板塊,大型游戲公司都有專門的動(dòng)畫團(tuán)隊(duì)去專門設(shè)計(jì)制作游戲動(dòng)作,在此基礎(chǔ)上衍生出了許多動(dòng)畫制作技術(shù),去解決動(dòng)畫生產(chǎn)制作中的問(wèn)題。而其中一個(gè)很大的問(wèn)題就是滑步問(wèn)題,滑步經(jīng)常出現(xiàn)在真實(shí)人體動(dòng)畫里,特別是在行走動(dòng)畫里,人們對(duì)于滑步現(xiàn)象特別敏感,只要出現(xiàn)一點(diǎn)點(diǎn)的滑步現(xiàn)象,整個(gè)動(dòng)畫就完全失去了原有的逼真性,所以要有一個(gè)高效的動(dòng)畫表現(xiàn),必須避免滑步現(xiàn)象的出現(xiàn)。此外,許多游戲中,都涉及自動(dòng)尋路的過(guò)程,及給定起點(diǎn)和終點(diǎn),讓角色自動(dòng)移動(dòng),躲避障礙物達(dá)到指定位置,在這一過(guò)程中,角色會(huì)自動(dòng)播放角色動(dòng)畫,這一過(guò)程一般只是簡(jiǎn)單循環(huán)播放一段跑步動(dòng)畫,而尋路是經(jīng)常性的操作,單一動(dòng)畫的循環(huán)播放就使得尋路過(guò)程顯得枯燥無(wú)聊,缺乏趣味性,一般的處理方式,都是通過(guò)玩法調(diào)整減少玩家的尋路距離,或者直接設(shè)置傳送點(diǎn),這些方式治標(biāo)不治本,依然會(huì)存在尋路過(guò)程。


      技術(shù)實(shí)現(xiàn)思路

      1、針對(duì)現(xiàn)有技術(shù)的不足,本發(fā)明提出一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法及系統(tǒng),該方法包括步驟:構(gòu)建虛擬環(huán)境包含速度坡度參數(shù)的體素化地圖、采用改進(jìn)的a*算法搜索地圖上規(guī)劃全局路徑、采用距離姿態(tài)匹配算法處理滑步問(wèn)題。本發(fā)明是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)的:

      2、本發(fā)明第一個(gè)方面:一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法,該方法包括以下步驟:

      3、s1:基于recast算法庫(kù)中的網(wǎng)格生成算法,去體素化地圖;

      4、s2:對(duì)每個(gè)體素進(jìn)行檢測(cè),對(duì)于大于一定坡度的體素,即無(wú)法到達(dá)的體素,直接跳過(guò);對(duì)其余能夠到達(dá)的體素記錄坐標(biāo);根據(jù)體素塊的坡度不同,計(jì)算速度信息,處理完后加入到最終處理完后的地圖中,用于后續(xù)的查詢;

      5、s3:對(duì)a*尋路算法搜索結(jié)果單一的問(wèn)題進(jìn)行優(yōu)化,使得同一個(gè)起點(diǎn)和終點(diǎn)每次會(huì)生成不同的路徑;

      6、s4:由于角色停步時(shí)的前后姿勢(shì)不匹配,則需采用雅可比方法去逼近停步動(dòng)畫開始播放時(shí)的第一幀姿勢(shì),對(duì)于非線性變換,雅可比矩陣求解出一個(gè)點(diǎn)移動(dòng)后所在的位置,假設(shè)關(guān)節(jié)旋轉(zhuǎn)微小角度t,則位置變化量x的表達(dá)式如下:

      7、x=j(luò)*t;

      8、其中j是雅可比矩陣;對(duì)j進(jìn)行求逆,得到其t=j(luò)-1*x;因此,當(dāng)0<x<0.1時(shí),求得對(duì)應(yīng)關(guān)節(jié)旋轉(zhuǎn)的角度;然后對(duì)每個(gè)骨骼乘以該角度,得到每個(gè)骨骼所在的位置;

      9、s5:通過(guò)預(yù)處理停步動(dòng)畫,對(duì)處理滑步進(jìn)行處理,進(jìn)而生成一條距離曲線,該曲線包含的數(shù)據(jù)含義是指每一幀動(dòng)畫到最后一幀動(dòng)畫所經(jīng)過(guò)的距離,在角色停止運(yùn)動(dòng)輸入后,程序根據(jù)當(dāng)時(shí)的速度、加速度、摩擦力以及其他運(yùn)動(dòng)參數(shù)計(jì)算出角色運(yùn)動(dòng)到的終點(diǎn),得出當(dāng)前距離終點(diǎn)的距離后,在曲線中查詢從停步動(dòng)畫的哪一幀去播放,從而保證在運(yùn)動(dòng)到終點(diǎn)時(shí)動(dòng)畫正好結(jié)束播放。

      10、進(jìn)一步地,所述步驟s3具體包括以下子步驟:

      11、(3.1)設(shè)計(jì)尋路算法代價(jià)函數(shù),即在啟發(fā)式算法中,增加拐點(diǎn)的獎(jiǎng)勵(lì),將速度變化作為拐點(diǎn),拐點(diǎn)越多,獎(jiǎng)勵(lì)越多,搜索該點(diǎn)的優(yōu)先級(jí)就越高,且目標(biāo)路徑中增加了地形變化的次數(shù),使地形更加復(fù)雜,匹配需要播放不同動(dòng)畫的需求;

      12、(3.2)對(duì)鄰居節(jié)點(diǎn)的選擇進(jìn)行優(yōu)化,增加同等優(yōu)先級(jí)鄰居節(jié)點(diǎn)選擇的隨機(jī)性,增加鄰居節(jié)點(diǎn)所搜范圍,不局限于上下左右的鄰居,增加對(duì)左上、左下、右上、右下鄰居點(diǎn)的檢索,也增加了路徑的隨機(jī)性;

      13、(3.3)最后引入對(duì)跳點(diǎn)的處理,進(jìn)一步增加隨機(jī)性,并加快計(jì)算以及優(yōu)化性能。

      14、進(jìn)一步地,所述尋路算法代價(jià)函數(shù)計(jì)算公式如下:

      15、f(x)=g(x)+h(x);

      16、其中,x表示當(dāng)前搜索的導(dǎo)航網(wǎng)格或?qū)ぢ锋溄?,f(x)是代價(jià)函數(shù)計(jì)算的權(quán)值,g(x)表示從尋路起點(diǎn)到x的已搜索路徑的距離,h(x)是x的啟發(fā)函數(shù)。

      17、進(jìn)一步地,所述步驟s3中的啟發(fā)函數(shù)h(x)的計(jì)算公式為:

      18、

      19、其中,vk表示在該點(diǎn)角色的速度,nk表示為該點(diǎn)的鄰居節(jié)點(diǎn),maxn(nk)函數(shù)的作用是返回一個(gè)隊(duì)列,該隊(duì)列包含所有鄰居節(jié)點(diǎn)的坡度變化最大的一些節(jié)點(diǎn),rnd(x)函數(shù)表示從這個(gè)隊(duì)列中隨機(jī)取出一個(gè)節(jié)點(diǎn)。

      20、進(jìn)一步地,s4中雅可比方法計(jì)算公式如下:

      21、t=j(luò)-1*x;

      22、其中,j-1表示雅可比矩陣的逆矩陣,x是像目標(biāo)位置運(yùn)動(dòng)的偏移量,t是該骨骼需要旋轉(zhuǎn)的最終角度。

      23、本發(fā)明第二個(gè)方面:提供了一種基于姿態(tài)距離匹配的動(dòng)畫尋路系統(tǒng),該系統(tǒng)包括以下模塊:

      24、體素化地圖模塊:基于recast算法庫(kù)中的網(wǎng)格生成算法,去體素化地圖;對(duì)每個(gè)體素進(jìn)行檢測(cè),對(duì)于大于一定坡度的體素,即無(wú)法到達(dá)的體素,直接跳過(guò);對(duì)其余能夠到達(dá)的體素記錄坐標(biāo);根據(jù)體素塊的坡度不同,計(jì)算速度信息,處理完后加入到最終處理完后的地圖中,用于后續(xù)的查詢;

      25、尋路模塊:對(duì)a*尋路算法搜索結(jié)果單一的問(wèn)題進(jìn)行優(yōu)化,使得同一個(gè)起點(diǎn)和終點(diǎn)每次會(huì)生成不同的路徑;動(dòng)畫模塊:根據(jù)尋路模塊得出的路徑,進(jìn)行移動(dòng),在移動(dòng)過(guò)程中,根據(jù)體素化地圖模塊生成的數(shù)據(jù)信息,根據(jù)不同的速度,去播放不同的尋路動(dòng)畫。

      26、姿勢(shì)匹配模塊:由于角色停步時(shí)的前后姿勢(shì)不匹配,則需采用雅可比方法去逼近停步動(dòng)畫開始播放時(shí)的第一幀姿勢(shì),對(duì)于非線性變換,雅可比矩陣求解出一個(gè)點(diǎn)移動(dòng)后所在的位置,假設(shè)關(guān)節(jié)旋轉(zhuǎn)微小角度t,則位置變化量x的表達(dá)式如下:

      27、x=j(luò)*t;

      28、其中j是雅可比矩陣;對(duì)j進(jìn)行求逆,得到其t=j(luò)-1*x;因此,當(dāng)0<x<0.1時(shí),求得對(duì)應(yīng)關(guān)節(jié)旋轉(zhuǎn)的角度;然后對(duì)每個(gè)骨骼乘以該角度,得到每個(gè)骨骼所在的位置;

      29、滑步處理模塊:通過(guò)預(yù)處理停步動(dòng)畫,對(duì)處理滑步進(jìn)行處理,進(jìn)而生成一條距離曲線,該曲線包含的數(shù)據(jù)含義是指每一幀動(dòng)畫到最后一幀動(dòng)畫所經(jīng)過(guò)的距離,在角色停止運(yùn)動(dòng)輸入后,程序根據(jù)當(dāng)時(shí)的速度、加速度、摩擦力以及其他運(yùn)動(dòng)參數(shù)計(jì)算出角色運(yùn)動(dòng)到的終點(diǎn),得出當(dāng)前距離終點(diǎn)的距離后,在曲線中查詢從停步動(dòng)畫的哪一幀去播放,從而保證在運(yùn)動(dòng)到終點(diǎn)時(shí)動(dòng)畫正好結(jié)束播放。

      30、本發(fā)明第三個(gè)方面:一種電子設(shè)備,包括:

      31、一個(gè)或多個(gè)處理器;

      32、存儲(chǔ)器,用于存儲(chǔ)一個(gè)或多個(gè)程序;

      33、當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行,使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)所述的一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法。

      34、本發(fā)明第四個(gè)方面:一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)指令,該指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)所述一種基于姿態(tài)距離匹配的動(dòng)畫尋路方法的步驟。

      35、本發(fā)明的有益效果如下:

      36、本發(fā)明通過(guò)改進(jìn)a*算法,去增加角色尋路路徑的隨機(jī)性,使路徑包含更多的地形,從而使路徑更豐富,能夠播放更多角色動(dòng)畫,此外,發(fā)明了姿態(tài)距離匹配算法去處理滑步問(wèn)題,提高了角色尋路動(dòng)畫的質(zhì)量,使角色在虛擬場(chǎng)景中的尋路動(dòng)畫更加豐富,流程。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1