[發明專利]一種面向安卓VR一體式頭顯的WebGL全景顯示方法有效
| 申請號: | 201910185019.0 | 申請日: | 2019-03-12 |
| 公開(公告)號: | CN110083231B | 公開(公告)日: | 2022-04-08 |
| 發明(設計)人: | 劉澤華;丁珩珂;王毅剛 | 申請(專利權)人: | 杭州電子科技大學 |
| 主分類號: | G06F3/01 | 分類號: | G06F3/01;G06T19/00;G06F16/957 |
| 代理公司: | 杭州君度專利代理事務所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310018 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 vr 體式 webgl 全景 顯示 方法 | ||
1.一種面向安卓VR一體式頭顯的WebGL全景顯示方法,其特征在于包括如下步驟:
步驟(1)獲取安卓系統的瀏覽器視圖組件,重寫瀏覽器組件的繪制方法,將瀏覽器組件的界面內容繪制到surfaceTexture中;
步驟(2)將步驟(1)中繪制的紋理通過安卓的GLES線程離屏渲染,繪制到GL紋理中;
步驟(3)將繪制的GL紋理傳輸到Unity3D引擎中,創建出紋理;
步驟(4)使用Unity3D將上一步繪制的紋理傳遞給安卓一體式虛擬現實設備的攝像機進行顯示;
所述的步驟(1)具體實現步驟如下:
1-1.獲取安卓活動主活動進程,為主活動進程開啟用戶界面UI線程,在該線程下,插入瀏覽器視圖UI和OpenGL渲染線程;
1-2.重寫瀏覽器視圖UI的繪制方法:
1-2-1.設置接口函數、設置surface和surfaceTexture類型的中間變量,用于傳輸紋理數據;
1-2-2.在安卓的瀏覽器類方法中使用surface來獲取UI組件的顯示內容;繼承步驟1-2-1中設置的接口,重寫瀏覽器組件的繪制方法,將由接口繼承的surface變量同步到畫布上,并且將該surface的內容繪制到由接口繼承的surfaceTexture上;每一幀瀏覽器視圖進行繪制時,先將其鎖定,該畫布繪制完成后,解鎖當前的繪制內容。
2.根據權利要求1所述的一種面向安卓VR一體式頭顯的WebGL全景顯示方法,其特征在于:所述的步驟(2)中具體實施步驟如下:
2-1.繼承安卓的OpenGL渲染接口,必須實現此接口的初始化方法、創建方法和更新幀方法;
2-1-1.初始化方法中:將步驟(1)設置好的瀏覽器UI組件作為參數,以獲取步驟(1)中繪制的surface和surfaceTexture;
2-1-2.創建方法中:創建OpenGL的擴展紋理和普通2D紋理,設置幀緩存對象,設置OpenGL繪制環境;
2-1-3.更新幀方法中:更新surfaceTexture,使用幀緩存對象對擴展紋理離屏渲染到普通紋理中。
3.根據權利要求2所述的一種面向安卓VR一體式頭顯的WebGL全景顯示方法,其特征在于:所述的步驟(3)具體包括如下步驟:
3-1.將準備好的安卓方法打包成庫,導入到Unity3D中,設置安卓環境,配置文件無需設置安卓的進程參數;
3-2.在Unity3D中調用步驟(2)中OpenGL渲染接口的JAVA方法;
3-3.在Unity3D的生命周期函數的初始化方法中,調用JAVA方法中的創建紋理方法,使用創建的紋理序號,創建外部紋理,然后綁定到游戲物體的紋理;
3-4.在Unity3D更新幀的生命周期函數中,調用該對象的更新方法,使用Unity3D中更新紋理的方法更新紋理。
4.根據權利要求3所述的一種面向安卓VR一體式頭顯的WebGL全景顯示方法,其特征在于:所述的步驟(4)中具體包括如下步驟:
4-1.設置該設備運行環境;
4-2.設置三維面物體為跟隨攝像機運動,將步驟(3)創建的紋理貼圖賦予該面物體;設備瀏覽器界面最終將實現全景瀏覽效果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州電子科技大學,未經杭州電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910185019.0/1.html,轉載請聲明來源鉆瓜專利網。





