初識VR
虛擬現實(Virtual Reality)技術是一種可以創建和體驗虛擬世界的計算機仿真系統,它利用計算機生成一種模擬環境,是一種多源信息融合的、交互式的三維動態視景和實體行為的系統仿真, 使用戶沉浸到該環境中。
2016年是VR的元年,它變得離我們不再陌生,VR移動端的興起也讓我們對VR有了更進一步的認識,幾十到幾百價格不等的VR眼鏡,隨處都可搜索到的VR視頻資源,購物娛樂中心的體驗店。VR不再那么觸不可及。
很早之前因為好奇也買了一個49元的小米VR眼鏡,但由于設備的質量不行玩了幾天就再也沒碰過了,最近因為公司項目需求,又入手了一副暴風魔鏡s1并開始了進一步的研究開發,在此記錄下學習過程和心得。
vr眼睛.png
首先說下了解到的VR知識
- VR頭盔和VR眼鏡的區別
- 共同點:實際上二者都是通過把一個完整的圖像,分成左右眼分視效果,按照遠近引起的立體視差,從而引起立體效果。
- 硬件、價格差別:VR眼鏡的組成,主要是依靠鏡片為技術核心,借助手機這一外部設備,讓用戶的眼睛處在一個黑色的封閉空間里即可進行視覺體驗。而VR頭盔硬件構成VR頭盔,則是獨立出來不需要手機這個外設的工具,其中組成配件就有許多,例如傳感器,藍牙,無線信號等硬件。當然,由于前者由于硬件構成簡單(一般只需一個外殼和、頭帶及兩塊凸透鏡組成),因此VR頭盔(一般在千元以上)在價格上一般遠遠高于VR眼鏡(便宜的不到10元)。
- 可視范圍不同:就VR眼鏡而言,看視頻時畫面的大小是隨著手機尺寸而決定的,另外反饋出來的視覺效果就是上下有黑色邊框,讓體驗大打折扣。而對比VR頭盔,戴上頭盔在眼睛可視范圍內是無死角的,視場角寬度根據不同廠商生產的頭盔產品從86-120°之間。
- 清晰度:清晰度方面沒什么特殊的可比性,目前手機最大的分辨率是1920x1080,而截至目前能所了解到的頂級頭盔分辨率已經達到了單眼1200x1080 的水平。所以算上雙眼平均下的話好像還是高挺多的。但單從實際效果來看,頭盔是有明顯顆粒感,而手機是沒有的。
- 眩暈感 :由于陀螺儀好壞直接影響用戶觀看影片的眩暈效果,如果使用較差的陀螺儀會讓用戶有嘔吐的感覺,VR頭盔相對比較好。
VR頭盔.jpg
移動端開發
魔鏡VR開發者平臺和谷歌VR開發平臺的對比
- SDK下載鏈接魔鏡SDK
- 里面包含demo,jar包和文檔說明。
- 相關資料較少,而且寫出來的程序必須上傳到魔鏡平臺供用戶使用,所以感覺使用起來不太方便。
- 谷歌SDK下載谷歌SDK
- demo中有VR視頻,VR全景圖和小游戲的sample。
- 文檔詳細,使用簡單。
VR眼鏡更多的還是展示全景圖片和360視頻,那么圖片和視頻有什么要求怎么制作呢?
資源格式.png
資源制作.png
谷歌VR SDK的簡單學習(播放VR視頻 展示圖片同理參照demo)
- sdk導入
compile 'com.google.vr:sdk-videowidget:1.30.0'
- 添加權限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
- xml核心代碼
<com.google.vr.sdk.widgets.video.VrVideoView
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="250dp"/>
- java 播放核心代碼(視頻文件需放在新建的assets文件夾下)
videoWidgetView.loadVideoFromAsset("congo.mp4", options);
播放視頻效果圖.png