欧美成人毛片_我要看特级黄色片_黄色一区二区三区四区_老师洗澡让我吃她胸视频_亚州中文字幕_快猫成人在线观看

搜索新聞

為什么JavaScript也將征服VR世界

來源:投影時代 更新日期:2016-04-13 作者:佚名

    因為我只玩過公司的 Oculus DK2,所以這里是以 DK2 為內容而展開的。

    實際上,要用 javascript 來用 VR 程序是很簡單的一件事:

    使用 Node.js 來讀取 Oculus 上的傳感器的數據,將這些數據用 WebSocket 協議來提供一個服務。

    尋找一個 3D 游戲引擎,如 Three.js 來創建一個 3D 世界。

    讀取傳感器的值將其表示在 3D 世界中。

    這點也可以用在混合應用上,你只需要有一個 CardBoard 即可。使用 Cordova 讀取手機傳感器的數據,再通過這些數據來改變 WebView 的狀態——除了發熱會比較嚴重,應該沒有別的影響。

    基礎知識:3D 世界與四元數

    在我們所熟知的 3D 游戲里,點的位置由三個坐標決定的(x,y,z),如下圖所示:

    這三個坐標只能表示我們在這個世界的位置,而不能上下的看這個世界。

    Oculus DK2 用的是 MPU (Motion Processing Unit)芯片是 MPU6500,是第二個整合性 6 軸運動處理組件(第一個是 MPU6050)。它可以數字輸出 6 軸或 9 軸的旋轉矩陣、四元數(quaternion)、歐拉角格式(Euler Angle forma)的融合演算數據。

    這時候,我們就需要歐拉角以及四元數來表示物體在虛擬世界的狀態。(PS:原諒我只能簡單地提一下)

    歐拉角是一組用于描述剛體姿態的角度,歐拉提出,剛體在三維歐氏空間中的任意朝向可以由繞三個軸的轉動復合生成。通常情況下,三個軸是相互正交的。

    其對應的三個角度又分別成為 roll(橫滾角),pitch(俯仰角)和 yaw(偏航角)。

    而四元數則是:

    四元數可以用于表示三維空間里的旋轉。它常用的另外兩種表示方式(三維正交矩陣和歐拉角)是等價的。人們用四元數來表示旋轉要解決兩個問題,一是如何用四元數表示三維空間里的點,二是如何用四元數表示三維空間的旋轉。

    之前玩過的 6050 出來大概就是這樣子的,如果你玩四軸飛行器的話,你也應該這樣玩過:

為什么JavaScript也將征服VR世界

    Copy/Paste 完上面的內容后,你可能沒有啥概念,還是舉個 hello,world 的例子。

    例子: 一個 hello,world

    讓我們在回到一開始說的那三步,我們將需要做三件事:

    尋找一個 Node 的 Oculus 拓展——不過,這件事現在可以交給 WebVR。

    尋找一個 Web 的 3D 庫,及其對應的 Oculus 展示插件。

    讀取傳感器數據,顯示到虛擬世界中。

    如下圖所示:

為什么JavaScript也將征服VR世界

    于是找至了對應的 Node 庫有:Node-HMD,它可以讀取傳感器的數據。

    還有 Three.js 和 Oculus Effect 插件,可以顯示出下面的視圖:

    這樣,我們 DK2 Control 讀取傳感器的數據,就可以到這個虛擬世界玩了~~。

    更詳細的介紹可以見: https://github.com/phodal/oculus-nodejs-threejs-example

    高級應用: 火星漫游者

    上面的應用示例還是太簡單了,讓我們來看一個高級應用——這是我們在兩個月前做的另外一個 Hackday Idea,這是另外一個“火星漫游者”:

    想象一下你想去看看火星,但是你又沒有錢去。而你可以租用這樣的一個機器人,然后你就可以在火星漫游了。

    因此,首先我們需要一個實時視頻通訊,這里我們就用到了 WebRTC:

    通過 WebRTC 我們就可以在計算機瀏覽器上實現實時通訊,再通過 Three.js 就可以將這個視頻轉為一個近似 3D 的視角。而捕獲這個視頻即可以通過手機上的瀏覽器,也可以在手機上編寫相應的 Web 應用。

    這里有一個在線的 Demo:http://laht.info/WebGL/DK2Demo.html

    架構大致如下圖所示:

為什么JavaScript也將征服VR世界

    這樣我們就解決了實時視頻這個問題,然后我們還需要去控制硬件:

    用 WebSocket 協議來提供 Oculus 的上、下、左、右運動的數據

    在手機上讀取這個傳感器數據,并將這個數據通過 BLE 傳送到小車上。

    小車以通過指令來做相應的運動。

    關于這部分內容的可以看我之前的那篇文章《我是如何 Hack 一個機器人的?》

    總結: All in javascript

    與C坑坑(C++)相比,javascript 更適合搭建原型——快速、直接、有效,畢竟 C++ 編譯需要時間的。運行起來的效果也如預期的一樣,電腦風扇各種轉,不知道是不是 Mac 專有的。不過,我想這個性能問題是一直都有的。

 標簽:VR軟件 技術介紹
廣告聯系:010-82755684 | 010-82755685 手機版:m.pjtime.com官方微博:weibo.com/pjtime官方微信:pjtime
Copyright (C) 2007 by PjTime.com,投影時代網 版權所有 關于投影時代 | 聯系我們 | 歡迎來稿 | 網站地圖
返回首頁 網友評論 返回頂部 建議反饋
快速評論
驗證碼: 看不清?點一下
發表評論
主站蜘蛛池模板: 99精品视频国产精品 | 伊人精品成人久久综合 | 久久久久无码国产精品不卡 | 外企女老板被洋老外啪啪 | 国产精品亚洲综合一区在线 | 免费在线观看黄色 | 国产精品美女www | 7777精品伊久久久大香线蕉语言 | 国产片在线观看免费观看 | 亚洲xxxxx视频 | 国产精品久久久久久久久久软件 | 亚洲中文字幕久久无码精品 | 亚洲大片一区二区三区 | 国产精品欧美日韩一区二区 | 少妇做爰免费视频网站裸体艺术 | 国产精品久久久久77777 | 欧美激欧美啪啪片 | 亚洲一卡2卡3卡4卡5卡乱码观看 | 草草影院ccyycom浮力影院 | 三级毛片网站 | 激情偷乱人成视频在线观看 | 欧美va大片| 中文字幕精品一区二区2021年 | 免费一本色道久久一区 | 精精国产xxxx视频在线野外 | 精品国产这么小也不放过 | 插我一区二区在线观看 | 亚洲成AV人片一区二区密柚 | 九九热这里都是精品 | 日韩视频中文字幕 | 亚洲欧美国产免费综合视频 | 亚洲国产欧美在线人成大黄瓜 | av一区二区三区在线 | 日韩亚洲欧美精品综合 | 国产OO后高中生在线视频 | 国产精品社区在线观看 | 欧美国产精品日韩在线 | 国产亚洲精品久久久闺蜜 | 色视频综合 | 中文字幕中文字幕1区 | 国产又黄又爽又刺激的免费网址 |