最近在做一個(gè)類似VR照片的demo,跟全景圖片也很像,只是VR照片與全景720度顯示,我只做了180度。但我發(fā)現(xiàn)他們實(shí)現(xiàn)的原理有一絲相似,希望可以給一些想入行AR、VR的朋友一些提示吧。
要想根據(jù)用戶搖晃手機(jī)的行為軌跡展示相應(yīng)的場景,那必須要使用移動(dòng)端的陀螺儀、加速器等傳感器來做相應(yīng)的協(xié)調(diào)。現(xiàn)在的移動(dòng)端已經(jīng)提供了很多傳感器,你可以根據(jù)自己的需要獲取相應(yīng)的數(shù)據(jù)。
剛開始的時(shí)候,我使用傳感器提供的姿態(tài)角,也稱為歐拉角:pitch yaw roll 來顯示。這種 姿態(tài)角/歐拉角 比較常用在航空上,無人機(jī)技術(shù)應(yīng)該也使用到了這個(gè)技術(shù)點(diǎn)。我用飛機(jī)的模型來展示一下這三個(gè)角,就一目了然了(不同作者使用不同的坐標(biāo)系,使用哪種坐標(biāo)系,個(gè)人而定。):
圖一
姿態(tài)角/歐拉角 在數(shù)學(xué)上理解起來會(huì)有點(diǎn)抽象,我也是稍理解一點(diǎn)。在維基百科上,歐拉角定義為:用來描述剛體在三維歐幾里得空間的取向,對(duì)于任何參考系,一個(gè)剛體的取向,是依照順序,從這參考系,做三個(gè)歐拉角的旋轉(zhuǎn)而設(shè)定的。有興趣了解得深入一點(diǎn),可以參考(需FQ):
https://zh.wikipedia.org/wiki/%E6%AC%A7%E6%8B%89%E8%A7%92
我們也可以簡單理解這三個(gè)角代表什么意思:
1、俯仰角θ(pitch):圍繞Y軸旋轉(zhuǎn)的。
圖二
2、偏航角ψ(yaw):圍繞Z軸旋轉(zhuǎn)的角度。
圖三
3、滾轉(zhuǎn)角Φ(roll):圍繞X軸旋轉(zhuǎn)的角度。
圖四
手機(jī)的坐標(biāo)系: