日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

万向节死锁 gimbal lock

發(fā)布時(shí)間:2025/3/18 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 万向节死锁 gimbal lock 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

萬(wàn)向節(jié)死鎖 gimbal lock

,如下圖一,把灰色箭頭想象成是一架飛機(jī),紅,綠藍(lán)三個(gè)圈看作是三個(gè)外圍控制器,外圈帶動(dòng)所有里圈運(yùn)動(dòng),里圈的運(yùn)動(dòng)不影響外圈。

1,首先,繞Y軸旋轉(zhuǎn)(旋轉(zhuǎn)綠圈),來(lái)確定前進(jìn)的方向。這時(shí)紅圈與藍(lán)圈都跟著旋轉(zhuǎn)。

2,然后,繞x軸旋轉(zhuǎn)(旋轉(zhuǎn)紅圈),讓飛機(jī)仰視或俯視。這時(shí)藍(lán)圈跟著一起旋轉(zhuǎn),綠圈不動(dòng)。

3,最后,繞z軸旋轉(zhuǎn)(旋轉(zhuǎn)藍(lán)圈),讓飛機(jī)左右傾斜。這時(shí)只有藍(lán)圈在轉(zhuǎn),紅綠圈不動(dòng)。

經(jīng)過這三個(gè)步驟,我們可以把飛機(jī)調(diào)整到任意想要的角度。這也是FPS相機(jī)中常用的 yaw, pitch, row三個(gè)操作。

在步驟2中,若旋轉(zhuǎn)紅圈過程中,恰巧旋轉(zhuǎn)到了圖二所示狀態(tài),然后進(jìn)行步驟3時(shí)會(huì)發(fā)現(xiàn),旋轉(zhuǎn)藍(lán)圈與綠圈效果一樣。

也就是這種狀態(tài)下,旋轉(zhuǎn)Y或Z軸效果一樣了,都只能使飛機(jī)左右傾斜,而不能再俯視或仰視(它只能頭朝天),這下壞了,飛機(jī)操作失靈了,只能向上直沖。這就所謂的萬(wàn)向節(jié)死鎖,gimbal lock.

可見,歐拉角旋轉(zhuǎn)使用的是物體的局部坐標(biāo)系,旋轉(zhuǎn)過程是對(duì)局部坐標(biāo)的三個(gè)軸X,Y,Z分別進(jìn)行的旋轉(zhuǎn)。

【所謂的死鎖,僅是在一個(gè)操作單元,即XYZ組成的任意一個(gè)次序中出現(xiàn)了無(wú)法控制的現(xiàn)象,如上面飛機(jī)失靈的情況,我們可以繼續(xù)操作X軸(紅圈)來(lái)調(diào)整飛機(jī)的仰視和俯視,這時(shí)飛機(jī)又可以回到水平飛行的正常軌道上來(lái)了】

【但是,對(duì)于使用歐拉角旋轉(zhuǎn)的程序,沒有人會(huì)去專門寫邏輯來(lái)判斷是否發(fā)生了萬(wàn)向節(jié)死鎖,D3D底層API更不會(huì)去管,因此我們的程序就會(huì)出BUG]

yaw?是左右看,pitch是俯視或仰視,roll就是左右傾斜。

如果我們寫了一個(gè)FPS的飛機(jī)控制程序,當(dāng)發(fā)生上面的死鎖時(shí),調(diào)用pitch就與調(diào)用roll一樣了,當(dāng)發(fā)現(xiàn)飛機(jī)朝上飛時(shí),于是調(diào)用pitch想調(diào)整機(jī)頭朝下,結(jié)果卻發(fā)現(xiàn)飛機(jī)只是左右傾斜而機(jī)頭仍然朝上直飛!出BUG了。

?參考:http://www.cnitblog.com/luckydmz/archive/2010/09/07/68674.html

按上述方法在U3D編輯器中可以試驗(yàn)出萬(wàn)向節(jié)死鎖,如下圖,物體先繞X軸旋轉(zhuǎn)90度后,再去調(diào)節(jié)Y軸和Z軸的旋轉(zhuǎn)角時(shí),發(fā)現(xiàn)物體只能繞Z軸旋轉(zhuǎn)了,調(diào)節(jié)Y軸的旋轉(zhuǎn)值時(shí)物體還是在繞Z軸轉(zhuǎn),死鎖了。

歐拉旋轉(zhuǎn)的計(jì)算可以有許多次序,每種次序得到的結(jié)果都不一樣,U3D為YXZ次序,如果不按此次序來(lái)旋轉(zhuǎn),你就會(huì)看不懂它的表現(xiàn)

死鎖的的情況是與歐拉旋轉(zhuǎn)的計(jì)算次序有關(guān)的。如YXZ次序時(shí),只要繞X軸的旋轉(zhuǎn)為90度,不管繞Y,Z旋轉(zhuǎn)多少,都是死鎖;XYZ次序時(shí),只要繞Y的旋轉(zhuǎn)為90度,不管繞X,Z的旋轉(zhuǎn)是多少,都是死鎖;其它類推,死鎖取決于中間次序的那個(gè)軸。

?如上面U3D中的試驗(yàn)當(dāng)我們先給rotation的Y設(shè)置90度,再調(diào)節(jié)X和Z的旋轉(zhuǎn)值時(shí),只要X不為90度就無(wú)死鎖,這說(shuō)明U3D在計(jì)算歐拉角時(shí)使用的計(jì)算順序正是上面的YXZ順序。

PS,歐拉角并不是個(gè)特殊算法的產(chǎn)物,它和矩陣旋轉(zhuǎn)本質(zhì)相同,就是說(shuō)利用矩陣來(lái)實(shí)現(xiàn)旋轉(zhuǎn)也會(huì)有死鎖,參考下面的這篇文章:

旋轉(zhuǎn)變換(二)歐拉角

posted on 2016-10-07 16:54 時(shí)空觀察者9號(hào) 閱讀(...) 評(píng)論(...) 編輯 收藏

總結(jié)

以上是生活随笔為你收集整理的万向节死锁 gimbal lock的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 插综合| 日本网站在线看 | 五月伊人网 | 东京热加勒比无码少妇 | 亚洲综合一二三区 | 日本欧美在线播放 | 成人特级毛片 | 日本欧美三级 | 国产日韩欧美在线观看 | 成人在线视频在线观看 | 欧美日韩精品在线观看 | 深夜av在线 | 在线欧美亚洲 | 国产在线精品观看 | 亚洲精品第二页 | 老司机在线观看视频 | 手机看片中文字幕 | 欧美黄色免费观看 | www..com黄色| 婷婷四房综合激情五月 | 日韩免费不卡视频 | 欧美人与禽猛交乱配 | 国产九色在线播放九色 | 自拍欧美日韩 | 亚洲毛茸茸| 色一情一伦一子一伦一区 | 国产精品久久久久久久久久久不卡 | 久久无码视频网站 | 夫妻性生活自拍 | 奇米二区| 黄色一级免费网站 | 天天色天天草 | 暖暖免费观看日本版 | 天堂久久av| 久久国产精品波多野结衣av | 午夜老湿机 | 黄色高清无遮挡 | 中文字幕一二 | 国产精品探花一区二区三区 | 欧美第一色| 少妇被按摩师摸高潮了 | 怨女1988国语版在线观看高清 | 成人性生交大片免费看 | 在线观看成人av | 2022精品国偷自产免费观看 | 日韩精品一区二区三区中文字幕 | 久久亚洲一区二区 | 综合色在线视频 | 日韩一区二区av | 九九热精品视频 | 亚洲第一狼人区 | 亚洲美女性生活视频 | 毛片中文字幕 | 一区二区三区四区高清视频 | 日日夜夜综合网 | 亚洲天堂av网 | 日韩综合在线 | 澳门免费av | 国产毛片精品国产一区二区三区 | 在线一区二区三区四区 | 乱老熟女一区二区三区 | 8090理论片午夜理伦片 | 国产男女猛烈无遮挡免费视频 | 亚洲精品一区在线 | 日韩三级一区 | 日本在线视频一区二区 | 久久久精品美女 | 可以免费看的av网站 | 久久久久99人妻一区二区三区 | 综合国产视频 | 激情成人综合 | 女性向av免费网站 | 国产一久久| 嫩草99 | 少女情窦初开的第4集在线观看 | 日韩久久久久久 | 九九九视频在线观看 | 免费三级av| 在线啪| 少妇久久精品 | 大尺度av | 99久久99久久精品国产片果冻 | 国产一级免费av | 国产又猛又黄 | 亚洲天堂色 | 高跟鞋和丝袜猛烈xxxxxx | 国产精品久久久精品 | 青青草一区二区 | 日本黄色激情视频 | 性一交一乱一伧国产女士spa | 亚洲少妇激情 | 欧美色图久久 | 色哟哟一区 | 男女日屁视频 | 亚洲欧美精品一区 | 免费观看成人鲁鲁鲁鲁鲁视频 | 丝袜视频在线观看 | 丰满人妻中伦妇伦精品app | 95看片淫黄大片一级 |