两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的方法及系統(tǒng)的制作方法

文檔序號(hào):9788196閱讀:517來(lái)源:國(guó)知局
實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本公開(kāi)總體涉及計(jì)算機(jī)圖形技術(shù)領(lǐng)域,具體涉及一種實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前游戲制作領(lǐng)域普遍采用骨骼動(dòng)畫(huà)的方法,S卩:對(duì)于角色模型,創(chuàng)建其相應(yīng)的骨骼,美術(shù)制作人員將模型上的頂點(diǎn)關(guān)聯(lián)到不同的骨骼,并設(shè)置好不同的影響權(quán)重,接下來(lái)美術(shù)制作人員會(huì)制作好角色模型骨骼的動(dòng)畫(huà)序列,然后由骨骼來(lái)驅(qū)動(dòng)模型上頂點(diǎn)的運(yùn)動(dòng),達(dá)到角色模型的動(dòng)畫(huà)效果,最后這種制作好的角色模型動(dòng)畫(huà)效果會(huì)在游戲內(nèi)播放,呈現(xiàn)給玩家。顯然這種骨骼動(dòng)畫(huà)方式的最終表現(xiàn)效果完全取決于美術(shù)制作人員預(yù)先設(shè)計(jì)好的骨骼動(dòng)畫(huà)序列,無(wú)法根據(jù)角色模型的實(shí)際運(yùn)動(dòng)情況有一些真實(shí)自然的反應(yīng),但為了在游戲達(dá)到更加逼真的效果,我們希望角色模型的某些局部能夠?qū)崟r(shí)地、自然地運(yùn)動(dòng)。比如游戲的女性角色模型,往往具有比較豐滿的胸部和臀部,為了能夠更好地吸引玩家,我們希望角色模型的這些部位能夠隨著角色模型的跑動(dòng)、跳躍、翻滾、受擊等產(chǎn)生比較自然的運(yùn)動(dòng)效果。比如,當(dāng)角色模型進(jìn)行上下跳躍的時(shí)候,其胸部會(huì)有一種自然的上下運(yùn)動(dòng)的效果,并且這種效果在游戲里需要實(shí)時(shí)顯示出來(lái)。因此就需要一種讓角色模型的某些局部能夠在游戲隨著角色模型的實(shí)際運(yùn)動(dòng)而自然運(yùn)動(dòng)的方法。
[0003]為了讓角色模型上的某些局部能夠在各種運(yùn)動(dòng)情況下能夠產(chǎn)生實(shí)時(shí)、自然的運(yùn)動(dòng)效果,一般的技術(shù)方案是選取角色模型上需要實(shí)時(shí)運(yùn)動(dòng)的那部分頂點(diǎn),將這部分的頂點(diǎn)交給第三方的物理引擎來(lái)模擬它們的運(yùn)動(dòng)。為了達(dá)到比較好的效果,需要在物理引擎中建立頂點(diǎn)之間的各種約束條件,比如相鄰頂點(diǎn)之間有一些距離上的約束(需要美術(shù)制作人員在物理引擎配套提供的編輯工具中進(jìn)行設(shè)置和調(diào)整)。選中的那部分頂點(diǎn)中在最外面的和非物理模擬頂點(diǎn)相鄰的那部分頂點(diǎn)是邊界頂點(diǎn),會(huì)遵從角色模型原來(lái)的運(yùn)動(dòng),即一種邊界約束條件,剩下的那部分頂點(diǎn)則會(huì)根據(jù)建立好的各種約束條件交給物理引擎實(shí)時(shí)計(jì)算出運(yùn)動(dòng)的位置。上面這種實(shí)現(xiàn)方法通??梢赃_(dá)到令人滿意的效果,但實(shí)際應(yīng)用到游戲開(kāi)發(fā)中也存在一些不足之處。首先,使用第三方的物理引擎會(huì)給游戲運(yùn)行時(shí)帶來(lái)額外的計(jì)算開(kāi)銷,特別是在需要模擬的頂點(diǎn)數(shù)目比較多的情況下,可能會(huì)給游戲帶來(lái)性能上的問(wèn)題。其次,由于是在角色模型的頂點(diǎn)級(jí)別進(jìn)行模擬,所以對(duì)于每個(gè)角色模型,美術(shù)制作人員都需要用物理引擎提供的編輯工具在頂點(diǎn)上進(jìn)行各種參數(shù)的設(shè)置和調(diào)整,這樣就大大增加了制作的時(shí)間成本。比如一種常見(jiàn)的情況是,在實(shí)際制作中,角色模型身上的服裝往往是和角色模型的身體統(tǒng)一制作在一個(gè)角色模型上,如果一個(gè)角色模型可以更換多套服裝,則每一套都需要美術(shù)制作人員對(duì)上面的某些局部進(jìn)行額外的處理,這無(wú)疑會(huì)增加很多制作成本。
[0004]因此,針對(duì)角色模型的局部運(yùn)動(dòng)需要一種新的構(gòu)建方法及系統(tǒng)。
[0005]在所述【背景技術(shù)】部分公開(kāi)的上述信息僅用于加強(qiáng)對(duì)本公開(kāi)的背景的理解,因此它可以包括不構(gòu)成對(duì)本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。

【發(fā)明內(nèi)容】

[0006]本公開(kāi)提供一種實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的方法及系統(tǒng),能夠讓角色模型的某些局部隨著角色模型的運(yùn)動(dòng)而自然地運(yùn)動(dòng),從而使得角色模型能夠具有更加逼真的動(dòng)畫(huà)表現(xiàn)效果。
[0007]本公開(kāi)的其他特性和優(yōu)點(diǎn)將通過(guò)下面的詳細(xì)描述變得顯然,或部分地通過(guò)本公開(kāi)的實(shí)踐而習(xí)得。
[0008]根據(jù)本公開(kāi)的一方面,一種實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的方法,包括:
[0009]將虛設(shè)骨骼與其它骨骼連接的端點(diǎn)作為第一質(zhì)點(diǎn),另一個(gè)端點(diǎn)作為第二質(zhì)點(diǎn),所述虛設(shè)骨骼為在需要運(yùn)動(dòng)的局部部位增加的虛擬骨骼,所述虛設(shè)骨骼具有骨骼蒙皮;
[0010]在角色運(yùn)動(dòng)過(guò)程中,計(jì)算所述第二質(zhì)點(diǎn)的位置;
[0011]根據(jù)所述第二質(zhì)點(diǎn)的位置,使所述虛設(shè)骨骼做相應(yīng)的旋轉(zhuǎn)。
[0012]根據(jù)本公開(kāi)的一實(shí)施方式,所述第一質(zhì)點(diǎn)和所述第二質(zhì)點(diǎn)之間通過(guò)直線段相連,直線段的長(zhǎng)度為所述虛設(shè)骨骼長(zhǎng)度L。
[0013]根據(jù)本公開(kāi)的一實(shí)施方式,計(jì)算所述第二質(zhì)點(diǎn)的位置至少遵循如下條件之一:
[0014]a.所述第一質(zhì)點(diǎn)隨著角色模型的其它骨骼運(yùn)動(dòng);
[0015]b.所述第一質(zhì)點(diǎn)和所述第二質(zhì)點(diǎn)之間的距離保持為L(zhǎng);
[0016]c.所述第二質(zhì)點(diǎn)受到重力的作用,重力加速度為g,重力方向定義在世界空間中;
[0017]d.所述第二質(zhì)點(diǎn)受到方向?yàn)檠刂跏妓龅谝毁|(zhì)點(diǎn)與所述第二質(zhì)點(diǎn)連線方向的一恢復(fù)力的作用,所述恢復(fù)力產(chǎn)生的加速度為a,所述恢復(fù)力的方向定義在角色模型的局部空間中;當(dāng)角色發(fā)生旋轉(zhuǎn)的時(shí)候,使所述恢復(fù)力做相應(yīng)的旋轉(zhuǎn),通過(guò)矩陣M進(jìn)行從所述局部空間轉(zhuǎn)換到所述世界空間的旋轉(zhuǎn)變換。
[0018]根據(jù)本公開(kāi)的一實(shí)施方式,按照下述近似數(shù)值方法計(jì)算所述第二質(zhì)點(diǎn)的位置:
[0019]a.根據(jù)如下公式計(jì)算得到所述第二質(zhì)點(diǎn)的更新速度疒,
[0020]ψ =V(i)+g*t+M*a*t;
[0021]b.根據(jù)如下公式計(jì)算得到所述第二質(zhì)點(diǎn)的更新位置K,
[0022]P7 =p(i)+V/*t;
[0023]c.根據(jù)如下公式對(duì)更新位置P'進(jìn)行修正,得到所述第二質(zhì)點(diǎn)在第i + Ι幀的實(shí)際位置P(i+1),
[0024]P(i+l)=Pa+L*(P/-Pa)/|P/_Pa ;
[0025 ]其中,V (i)為所述第二質(zhì)點(diǎn)在第i幀的速度,P (i)為所述第二質(zhì)點(diǎn)在第i幀的位置,t為第i幀和第i + Ι幀之間的時(shí)間間隔,Pa是所述第一質(zhì)點(diǎn)在第i+Ι幀的位置,P(i+1)為所述第二質(zhì)點(diǎn)在第i+Ι幀的位置。
[0026]根據(jù)本公開(kāi)的一實(shí)施方式,根據(jù)如下公式計(jì)算所述第二質(zhì)點(diǎn)的速度:
[0027]V(i+l) = (P(i+l)-P(i))/t,
[0028]其中,V(i+1)為所述第二質(zhì)點(diǎn)在第i+Ι幀的速度。
[0029]根據(jù)本公開(kāi)的一實(shí)施方式,所述使所述虛設(shè)骨骼做相應(yīng)的旋轉(zhuǎn)包括使所述虛設(shè)骨骼旋轉(zhuǎn)后的方向與新的所述第一質(zhì)點(diǎn)與所述第二質(zhì)點(diǎn)連線方向一致。
[0030]根據(jù)本公開(kāi)的一實(shí)施方式,還包括:通過(guò)所述骨骼蒙皮使得所述虛設(shè)骨骼的旋轉(zhuǎn)帶動(dòng)角色模型上相應(yīng)部位頂點(diǎn)的運(yùn)動(dòng)。
[0031]根據(jù)本公開(kāi)的一實(shí)施方式,所述虛設(shè)骨骼不具備動(dòng)畫(huà)信息。
[0032]根據(jù)本公開(kāi)的一實(shí)施方式,所述第二質(zhì)點(diǎn)為自由端點(diǎn)。
[0033]根據(jù)本公開(kāi)的另一方面,一種實(shí)現(xiàn)角色模型局部實(shí)時(shí)運(yùn)動(dòng)的系統(tǒng),包括:
[0034]骨骼分析單元,用于將虛設(shè)骨骼與其它骨骼連接的端點(diǎn)作為第一質(zhì)點(diǎn),另一個(gè)端點(diǎn)作為第二質(zhì)點(diǎn),所述虛設(shè)骨骼為在需要運(yùn)動(dòng)的局部部位增加的虛擬骨骼,所述虛設(shè)骨骼具有骨骼蒙皮;
[0035]計(jì)算單元,用于在角色運(yùn)動(dòng)過(guò)程中,計(jì)算所述第二質(zhì)點(diǎn)的位置;
[0036]旋轉(zhuǎn)單元,用于根據(jù)所述第二質(zhì)點(diǎn)的位置,使所述虛設(shè)骨骼做相應(yīng)的旋轉(zhuǎn)。
[0037]根據(jù)本公開(kāi)的一實(shí)施方式,所述第一質(zhì)點(diǎn)和所述第二質(zhì)點(diǎn)之間通過(guò)直線段相連,直線段的長(zhǎng)度為所述虛設(shè)骨骼長(zhǎng)度L。
[0038]根據(jù)本公開(kāi)的一實(shí)施方式,所述計(jì)算單元計(jì)算第二質(zhì)點(diǎn)的位置至少遵循如下條件之一:
[0039]a.所述第一質(zhì)點(diǎn)隨著角色模型的其它骨骼運(yùn)動(dòng);
[0040]b.所述第一質(zhì)點(diǎn)和所述第二質(zhì)點(diǎn)之間的距離保持為L(zhǎng);
[0041 ] c.所述第二質(zhì)點(diǎn)受到重力的作用,重力加速度為g,重力方向定義在世界空間中;
[0042]d.所述第二質(zhì)點(diǎn)受到方向?yàn)檠刂跏妓龅谝毁|(zhì)點(diǎn)與所述第二質(zhì)點(diǎn)連線方向的一恢復(fù)力的作用,所述恢復(fù)力產(chǎn)生的加速度為a,所述恢復(fù)力的方向定義在角色模型的局部空間中;當(dāng)角色發(fā)生旋轉(zhuǎn)的時(shí)候,使所述恢復(fù)力做相應(yīng)的旋轉(zhuǎn),通過(guò)矩陣M進(jìn)行從所述局部空間轉(zhuǎn)換到所述世界空間的旋轉(zhuǎn)變換。
[0043]根據(jù)本公開(kāi)的一實(shí)施方式,所述計(jì)算單元按照下述近似數(shù)值方法計(jì)算所述第二質(zhì)點(diǎn)的位置:
[0044]a.根據(jù)如下公式計(jì)算得到所述第二質(zhì)點(diǎn)的更新速度疒,
[0045]V7 =V(i)+g*t+M*a*t;
[0046]b.根據(jù)如下公式計(jì)算得到所述第二質(zhì)點(diǎn)的更新位置K,
[0047]P7 =p(i)+V/*t;
[0048]c.根據(jù)如下公式對(duì)更新位置P'進(jìn)行修正,得到所述第二質(zhì)點(diǎn)在第i + Ι幀的實(shí)際位置P(i+1),
[0049]P(i+l)=Pa+L*(P/-Pa)/|P/_Pa ;
[0050 ]其中,V (i)為所述第二質(zhì)點(diǎn)在第i幀的速度,P (i)為所
當(dāng)前第1頁(yè)1 2 3 4 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
保康县| 保德县| 祁阳县| 永顺县| 宁海县| 台南市| 县级市| 新巴尔虎右旗| 新泰市| 清苑县| 县级市| 宣武区| 宁津县| 涿鹿县| 宜宾县| 依安县| 南岸区| 柏乡县| 海南省| 辽宁省| 沭阳县| 临桂县| 肥乡县| 当涂县| 团风县| 宁陕县| 于都县| 西乡县| 北票市| 海安县| 娄底市| 若羌县| 丰镇市| 宁国市| 滕州市| 宝丰县| 襄城县| 漳平市| 齐河县| 西乌珠穆沁旗| 西宁市|