青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴(yán)以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

碰撞檢測 小結(jié)

轉(zhuǎn)載自:http://www.cnblogs.com/Yuri/archive/2007/07/28/834227.html

http://yuri.cnblogs.com/


 

Broad-phase碰撞檢測

Sweep and Prune:
1.將物體的AABB分離到三個(gè)坐標(biāo)軸上。得到若干個(gè)區(qū)間。
2.根據(jù)區(qū)間的終點(diǎn)坐標(biāo)由小到大排序。
3.逐個(gè)遍歷排序結(jié)果,當(dāng)遇到一個(gè)區(qū)間的起始點(diǎn)的時(shí)候,就將這個(gè)區(qū)間放到一個(gè)列表中;當(dāng)遇到一個(gè)區(qū)間的終點(diǎn)時(shí),就將這個(gè)區(qū)間從列表中清除。
 當(dāng)在列表中存在區(qū)間,而又遇到一個(gè)新區(qū)間的起始點(diǎn)時(shí),則遇到的區(qū)間與列表中的所有區(qū)間重疊。
4.如果一對(duì)物體在三個(gè)坐標(biāo)軸上的區(qū)間都重疊,那么他們的AABB相疊。

Mid-phase碰撞檢測

碰撞檢測樹就是將要碰撞的網(wǎng)格分離成多個(gè)部分,并將這些部分按樹的結(jié)構(gòu)組織起來。
我的碰撞檢測樹就是一BVH樹,和標(biāo)準(zhǔn)的AABB碰撞檢測樹相比,AABB樹是2叉樹,我的樹的節(jié)點(diǎn)數(shù)是不定的。
兩種建樹過程如下:

AABB:

1.計(jì)算三角形集合的AABB包圍體
2.找出一個(gè)平面,這平面能最大限度的分割三角形集合(一般在中心即可),這個(gè)平面必須與坐標(biāo)平面平行(因?yàn)榘鼑w是AABB)
3.穿過這個(gè)平面的三角形按中點(diǎn)分配到平面一側(cè),如果中點(diǎn)還在平面上,隨便分配
4.將分出的這兩部分作為子節(jié)點(diǎn)繼續(xù)分割(步驟1),直到分出的部分只有一個(gè)三角形

       我的碰撞檢測樹:
1.計(jì)算三角形集合的包圍體
2.計(jì)算三角形集合的幾何重心,將幾何重心視為原點(diǎn),按三個(gè)坐標(biāo)平面將三角形集合分成8部分
3.穿過這個(gè)坐標(biāo)平面的三角形按中點(diǎn)分配到平面一側(cè),如果中點(diǎn)還在平面上,隨便分配
4.如果有的部分中沒三角形,那么去掉它。如果只有一部分且這部分包含多個(gè)三角形,強(qiáng)行隨便的將這部分分成多部分(防止死遞歸)。
5.將分出的n部分作為子節(jié)點(diǎn)繼續(xù)分割(步驟1),直到分出的部分只有一個(gè)三角形
我的樹可能不如AABB樹平衡,可能性能稍差。

包圍體有:

包圍球
AABB
OBB
……

注:
 碰撞檢測樹一般在物體定坐標(biāo)系下建立出來
 可以根據(jù)情況,為不同節(jié)點(diǎn)選擇不同類型的包圍體,使得包圍體包圍得最緊湊

碰撞檢測:
一個(gè)幾何圖形vs樹
  按深度優(yōu)先或廣度優(yōu)先遍歷樹,對(duì)于非最末級(jí)節(jié)點(diǎn),判斷幾何圖形是否和節(jié)點(diǎn)包圍體相交,如果相交那么繼續(xù)遍歷它的子節(jié)點(diǎn)。對(duì)于最末級(jí)節(jié)點(diǎn),還要進(jìn)行幾何圖形和最末節(jié)點(diǎn)所對(duì)應(yīng)的三角形求交。這樣,遍歷完一次即可找到所有碰撞。

注:
 1.碰撞檢測需檢測出碰撞點(diǎn),碰撞法向量,和刺穿深度
 2.球和三角形碰撞:
  以下過程按順序執(zhí)行,一旦相交就return,停止和這個(gè)三角形繼續(xù)檢測:
   (1).判斷球心與三角面垂直且過三邊的平面的位置關(guān)系,如果被包圍,那么直接判斷球心到三角面所在平面距離是否<=半徑
   (2).根據(jù)(1)的結(jié)果,如果球心在哪條邊外,那么試著和那條線段求交
   (3).判斷球心到三角形某頂點(diǎn)距離<=半徑
 3.球和棱、點(diǎn)碰撞,碰撞法向量為那個(gè)面在碰撞點(diǎn)的切平面的法向量
 4.通過更精確的包圍體測試,會(huì)遍歷更少節(jié)點(diǎn),但更精確的包圍體測試一般會(huì)花更多時(shí)間。

樹vs樹
  對(duì)于一對(duì)節(jié)點(diǎn),判斷兩個(gè)節(jié)點(diǎn)的包圍體是否相交。如果相交,那么測試它們的子節(jié)點(diǎn)包圍體是否相交。
如果有一個(gè)節(jié)點(diǎn)是最末級(jí)節(jié)點(diǎn),它對(duì)應(yīng)著一個(gè)三角形,另一個(gè)是一個(gè)非最末級(jí)節(jié)點(diǎn),那么問題轉(zhuǎn)化為上面“一個(gè)幾何圖形vs樹”。
如果兩個(gè)節(jié)點(diǎn)都是最末級(jí)節(jié)點(diǎn),那么進(jìn)行三角形求交。

注:
 對(duì)于剛體,它們會(huì)轉(zhuǎn)動(dòng),轉(zhuǎn)動(dòng)了的AABB可以用AABB加上一個(gè)剛體變換矩陣表示。也可懶一些,直接把樹放入全局坐標(biāo)系下,更新樹。


樹的更新:
  如果物體不是剛體,可能會(huì)形變,這就需要更新樹。一般自下而上的更新樹。先根據(jù)最末級(jí)節(jié)點(diǎn)對(duì)應(yīng)的三角形,更新最末級(jí)節(jié)點(diǎn)。然后一級(jí)一級(jí)更新上面的節(jié)點(diǎn),使它們的包圍體包住子節(jié)點(diǎn)。


以后安排(先把想法記下來)
物體破裂 :
將物體網(wǎng)格表示成一張無向圖(不用鄰接矩陣表示),在壓強(qiáng)足夠大的地方細(xì)化網(wǎng)格,細(xì)化出的部分作為圖的一部分,然后從壓強(qiáng)足夠大的幾個(gè)頂點(diǎn)遍歷圖。遍歷時(shí)根據(jù)物體物理材質(zhì)選擇圖的邊(第一條邊應(yīng)選擇最和切向量正交的),將其并入斷裂線,必要時(shí)就細(xì)化網(wǎng)格,直到這條線首尾封閉。這樣做是因?yàn)椴煌馁|(zhì)的物體,其斷裂口有的光滑,有的粗糙,甚至有尖刺。這樣應(yīng)該能生成一條滿意的斷裂線。然后取出子圖,成為分裂出的物體的網(wǎng)格的一部分。不過斷口的填充就暫無想法了……

腳本:
設(shè)想了一種托管腳本。先寫好腳本,經(jīng)過編譯器將其編譯為自定的較低級(jí)中間語言,或者直接IL代碼。運(yùn)行前加載時(shí),對(duì)其進(jìn)行JIT編譯,除了.Net的JIT以外,還有自己的一些,當(dāng)然肯定是自己先處理后再交給.Net……這樣腳本最終就是本機(jī)代碼,執(zhí)行速度比解釋型的快,而且異常也不用一下一下的考慮。
一開始編譯為直接IL代碼時(shí),不能直接轉(zhuǎn)為它的字節(jié)碼,而是自己規(guī)定的字節(jié)碼,但其指令還是一一對(duì)應(yīng)的(就是把IL代碼用2進(jìn)制形式表示了一下)。這主要是因?yàn)榇a中有一些東西,還不能直接轉(zhuǎn)為標(biāo)準(zhǔn)的IL字節(jié)碼

最終應(yīng)該可以構(gòu)建復(fù)雜的物體,比如一個(gè)人,由Joint、剛體(骨骼和關(guān)節(jié))和柔體(頭發(fā)和肥膘)組成。他做個(gè)什么動(dòng)作要是碰到了什么倒是自然能模擬出來。不過他的行走,怎么維持重心不好說,我的想法是對(duì)已做好的動(dòng)畫解析,將其數(shù)值微分,最后算出各部分的作用力……維持重心不管他用那些肌肉,維持重心的力 應(yīng)該包括在里面……
以前有外國人擬做過類似的東西,第六屆全國中小學(xué)電腦制作活動(dòng)上還有即將得一得獎(jiǎng)的抄過——botz,一個(gè)2D質(zhì)點(diǎn)彈簧系統(tǒng)模擬程序,它的歐拉法積分不嚴(yán)密(或者說就不是),碰撞檢測就和邊界檢查了一下,但是要注意他的“肌肉”思想,質(zhì)點(diǎn)彈簧系統(tǒng)組成機(jī)器人,然后肌肉伸縮運(yùn)動(dòng),我這個(gè)應(yīng)該和那個(gè)在這一點(diǎn)有著類似之處。更接近一點(diǎn)的東西就是Dr.Jan Bender的那些機(jī)器人了。
當(dāng)然稍微遙遠(yuǎn)的東西別想得太多,畢竟還有不少東西未完成……

posted on 2008-01-09 17:21 楊粼波 閱讀(1466) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一级艳片视频免费观看| 亚洲精品国产精品国自产观看| 免费国产一区二区| 亚洲中字在线| 99综合视频| 亚洲福利在线看| 久久久九九九九| 亚洲女人天堂av| 一本色道久久加勒比88综合| 在线观看欧美| 狠狠狠色丁香婷婷综合激情| 国产精品久久久久三级| 欧美人妖在线观看| 欧美成人精精品一区二区频| 久久久亚洲午夜电影| 欧美在线你懂的| 欧美一级理论片| 午夜精品福利视频| 亚洲在线视频观看| 中文网丁香综合网| 正在播放亚洲一区| 一区二区三区四区国产| 亚洲精品午夜| 日韩视频三区| 亚洲最黄网站| 一区二区三区四区精品| 99这里只有精品| 夜夜狂射影院欧美极品| 日韩一区二区精品葵司在线| 亚洲茄子视频| 99国产成+人+综合+亚洲欧美| 91久久夜色精品国产网站| 亚洲高清自拍| 亚洲日本va午夜在线电影| 最新中文字幕亚洲| 亚洲理伦电影| 一区二区动漫| 午夜精品久久久久久久99水蜜桃| 亚洲欧美日韩国产综合| 欧美一区二区私人影院日本| 欧美一区二区三区免费观看| 久久国产主播| 另类天堂视频在线观看| 麻豆九一精品爱看视频在线观看免费 | 国产一区二区三区高清在线观看 | 亚洲人成网站999久久久综合| 亚洲欧洲另类| 亚洲视频精选| 欧美一级黄色网| 久久性天堂网| 亚洲国产精品热久久| 99riav国产精品| 亚洲欧美美女| 久久精品人人爽| 嫩模写真一区二区三区三州| 欧美日韩国产一区二区| 国产精品毛片| 亚洲二区在线视频| 夜夜嗨av一区二区三区四区| 亚洲一区二区三区在线视频| 久久激情综合| 亚洲二区精品| 亚洲一区久久久| 久久精品人人做人人爽| 欧美激情乱人伦| 国产精品网站一区| 亚洲第一偷拍| 亚洲欧美成人综合| 免费一级欧美片在线播放| 亚洲日本成人网| 欧美有码在线观看视频| 欧美精品久久一区二区| 国产精品亚洲第一区在线暖暖韩国| 黄色成人在线网址| 亚洲一区欧美一区| 你懂的视频欧美| 亚洲在线观看视频网站| 老司机成人网| 国产精品一区一区三区| 亚洲精品国产精品久久清纯直播 | 久久精品一区四区| 欧美精品成人一区二区在线观看| 国产欧美亚洲精品| 99xxxx成人网| 久久亚洲综合色一区二区三区| 亚洲免费精品| 久热国产精品| 国产日韩欧美| 亚洲综合三区| 亚洲黄色尤物视频| 久久精品最新地址| 国产精品视频一区二区三区 | 欧美激情一区二区三区在线| 国产亚洲一本大道中文在线| 一区二区三区精品在线| 欧美+亚洲+精品+三区| 亚洲影院污污.| 欧美视频免费| 99re成人精品视频| 欧美成人午夜| 久久国产精品高清| 国产区亚洲区欧美区| 亚洲一区二区三区涩| 亚洲福利久久| 久久综合久久久久88| 国产自产高清不卡| 欧美一区午夜视频在线观看| 99国产成+人+综合+亚洲欧美| 欧美99久久| 在线日本高清免费不卡| 久久av一区二区三区漫画| 99在线精品观看| 欧美日韩国产精品一区二区亚洲| 亚洲第一精品福利| 麻豆成人综合网| 久久久久国产精品一区二区| 国产亚洲福利| 久久久久久久波多野高潮日日| 亚洲午夜久久久久久久久电影院| 欧美日韩一区三区四区| 亚洲最新色图| 日韩亚洲欧美成人| 欧美视频亚洲视频| 亚洲在线网站| 亚洲一区二区三区四区在线观看| 国产精品大全| 午夜一区二区三视频在线观看| 亚洲新中文字幕| 国产伦精品一区二区三区在线观看| 亚洲已满18点击进入久久| 一本一本大道香蕉久在线精品| 欧美日韩亚洲一区三区 | 欧美视频在线免费| 亚洲综合日韩中文字幕v在线| 一区二区日韩精品| 国产精品综合网站| 久久久爽爽爽美女图片| 久久久久久有精品国产| 亚洲激情另类| 亚洲老板91色精品久久| 国产精品久久久久久久久久直播| 亚洲欧美卡通另类91av | 欧美色图五月天| 亚欧美中日韩视频| 久久国内精品视频| 亚洲国产成人在线| 亚洲日本一区二区| 国产精品萝li| 久久一区国产| 欧美精品精品一区| 午夜日韩电影| 久久久久久国产精品mv| 99成人在线| 亚洲欧美精品中文字幕在线| 国语自产精品视频在线看| 亚洲第一区在线| 欧美视频在线观看免费网址| 欧美一区二区在线| 久久天天躁狠狠躁夜夜爽蜜月| 日韩午夜电影av| 亚洲一区二区日本| 有码中文亚洲精品| 日韩视频在线免费观看| 国产日韩在线亚洲字幕中文| 欧美电影在线播放| 国产精品极品美女粉嫩高清在线| 久久婷婷国产综合国色天香| 欧美高清视频在线播放| 欧美一区成人| 欧美96在线丨欧| 久久国产精品亚洲va麻豆| 欧美xxx成人| 欧美中文字幕视频| 欧美激情综合网| 久久久久久久久久久久久久一区 | 国产精品午夜电影| 亚洲春色另类小说| 国产精品一区二区黑丝| 欧美国产在线观看| 国产精品素人视频| 亚洲欧洲美洲综合色网| 国产一二三精品| 一二三区精品福利视频| 在线观看av不卡| 亚洲综合日韩在线| av成人福利| 美女999久久久精品视频| 欧美一级二区| 欧美日韩在线电影| 亚洲大胆女人| 国模精品一区二区三区色天香| 99热在线精品观看| 最新国产乱人伦偷精品免费网站| 午夜在线不卡| 亚洲一级一区| 欧美理论在线播放| 亚洲大胆在线| 影音先锋成人资源站| 亚洲欧美综合v| 亚洲欧美成人网|