📢前言
本篇文章將會介紹一下在Unity 中可以用的一些瀏覽器插件
有的是內(nèi)嵌形式
的,就是在Unity 中顯示瀏覽器的相關(guān)內(nèi)容,有的則是會調(diào)用電腦本身的瀏覽器
插件有很多種,基本上都能實(shí)現(xiàn)一個(gè)瀏覽器
最基本的功能,就是訪問網(wǎng)頁,然后可以點(diǎn)擊進(jìn)行跳轉(zhuǎn)
下面一起來看一下都有哪些插件可以實(shí)現(xiàn)這些功能吧,方便以后在項(xiàng)目開發(fā)中遇到可以利用對應(yīng)的工具!
🍉瀏覽器相關(guān)插件
🚩第一款:Embedded Browser (ZFBrowser)
Embedded Browser 是一款內(nèi)嵌式瀏覽器插件,只適用于PC端,并不適合安卓端
Unity AssetsStore網(wǎng)址: https://assetstore./packages/tools/gui/embedded-browser-55459
功能:
把場地渲染到 2D 或 3D 對象 Chromium 后端支持;最好的內(nèi)置類來支持:HTML,、CSS 和 JavaScript 從 Unity 調(diào)用 JavaScript 從 JavaScript 調(diào)用 Unity 透明或不透明的頁面背景 將 HTML + 資源嵌入游戲 3D UI/HUD 綜合演示 場景菜單、警報(bào)/提示/確認(rèn)/pw 提示 可自定義的設(shè)計(jì),無OS 模塊 控制:url,、退后、重新加載、重縮放大小等等,。 Mipmap 模擬著色器:更快的紋理更新且無火花 攔截新窗口并為其創(chuàng)建場景內(nèi)對象 極簡 JSON 庫 提供 Chromium 的公開編碼支持(非實(shí)時(shí)的 YouTube 視頻應(yīng)能使用; Vimeo、Twitch 則不支持,。為你的視頻使用 WebM/VP9,。 渲染 SVG 自定義鼠標(biāo) 實(shí)驗(yàn)性支持 Adobe Flash 頁面檢查器 編輯/刪除 cookie 可自定義的鼠標(biāo)/鍵盤輸入 包括:鼠標(biāo)點(diǎn)擊、FPS 或 GUI 包括:VR(在 Windows 上測試過 HTC Vive 和 Oculus Touch) 包括:VR 的世界太空鍵盤 自動(dòng)包含建成文件 設(shè)置 Chromium CLI 標(biāo)簽
支持的平臺 :
Windows 32 位獨(dú)立平臺(Mono) Windows 64 位獨(dú)立平臺(Mono,、il2cpp)獨(dú)立 OS X 64位獨(dú)立平臺(Mono,il2cppp) Linux 64 位獨(dú)立平臺(實(shí)驗(yàn)性)(Mono)
🚩第二款:UniWebView
UniWebView 是一款輕量型插件,支持PC端和移動(dòng)端設(shè)備 ,現(xiàn)在已經(jīng)更新到UniWebView 4版本了
但是只能貼屏顯示,不能放到世界空間中形成一個(gè)3D效果 ,我上次測試還是貼屏顯示,不知道后期會不會加功能
就跟我們手機(jī)上常用的瀏覽器一樣,在移動(dòng)端效果不錯(cuò)
官網(wǎng)地址:https:/// Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/network/uniwebview-4-175993
功能:
網(wǎng)絡(luò)瀏覽 使用安全瀏覽進(jìn)行 OAuth 驗(yàn)證,或與系統(tǒng)瀏覽器共享 Cookie 載入本地 HTML 文件 JavaScript 完整支持 基于 url scheme 的消息系統(tǒng) 通過絕對值或引用 Unity UI 元素的相對值來設(shè)置位置和大小 播放 YouTube,Vimeo 或本地視頻 獲取照片和上傳 網(wǎng)頁透明部分穿透點(diǎn)擊,使用網(wǎng)頁制作游戲 UI 查看我們的網(wǎng)站獲取更多信息
🚩第三款:Texture Web View (Android)
Texture Web View (Android) 支持PC和移動(dòng)端,也可以放置到世界空間中 具有3D效果
Texture Web View 是一個(gè)Android Web View插件,它讓你能夠在2D/3D對象上渲染網(wǎng)站,并有可能使用基于本地Web View組件的交互功能,。
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/texture-web-view-android-155318
功能:
快速靈活的web視圖渲染,使用本地硬件canvas:只支持OpenGLES2/3圖形API); 支持armeabi-v7a, x86, arm64-v8a-bit Android處理器(對于arm64-bit你需要直接在Unity引擎中啟用庫); 支持在2D或3D對象上渲染網(wǎng)頁; 支持渲染需要硬件渲染支持的組件(僅適用于API級別23+)-如HTML5視頻,YouTube等; 支持在當(dāng)前顯示頁面的上下文中異步評估JavaScript; 支持渲染多個(gè)web視圖實(shí)例的可能性; 支持使用當(dāng)前網(wǎng)頁框架像素的可能性(將被忽略使用硬件功能,工作不那么順利); 支持主要交互功能,如:點(diǎn)擊,滾動(dòng),文本選擇,編輯; 實(shí)驗(yàn)性虛擬現(xiàn)實(shí)支持(Cardboard, Oculus)。
提示:
不能在Unity編輯器模式下工作; 對于arm64位處理器支持,直接在Unity引擎的“TextureWebView/Plugins/Android/libs/arm64-v8a”文件夾中啟用庫; 硬件渲染API等級23+要求API等級15; 當(dāng)前版本不包括虛擬鍵盤,但包括所有需要的功能,使用您的自定義一個(gè),如:顯示/隱藏鍵盤回調(diào),設(shè)置輸入字段文本,。
🚩第四款:Mobile Web View (Android, iOS)
Mobile Web View 支持PC和移動(dòng)端,可以在世界空間中顯示3D效果
如果你曾經(jīng)想將網(wǎng)站渲染到Unity紋理上,并在移動(dòng)平臺上與之互動(dòng),那么這個(gè)資產(chǎn)就是為你準(zhǔn)備的,。
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/mobile-web-view-android-ios-82142
特點(diǎn):
Android (x86和armeabi-v7a-bit友好); iOS(兼容arm64和armv7位); 快速和靈活的渲染(快速本地紋理更新:金屬和OpenGL圖形API); 支持虛擬現(xiàn)實(shí)(硬紙板,Oculus); 支持渲染網(wǎng)站到2D或3D對象的可能性; 支持在同一時(shí)間渲染多個(gè)網(wǎng)站的可能性; 支持的可能性,以獲得像素的當(dāng)前頁框架; 支持主要的交互功能,如:點(diǎn)擊,滾動(dòng),編輯。
提示:
開始使用MWV前請閱讀用戶手冊; 當(dāng)前版本不支持“自動(dòng)旋轉(zhuǎn)” 不能在Unity編輯器模式下工作 要求最低API等級15 (Android 4.0.3); 播放器設(shè)置中正確的工作開關(guān)—Internet接入:需要,。
🚩第五款:ULiteWebView Unity
ULiteWebView Unity 也是一款輕量型插件(相比上面的這個(gè)要更輕量),只支持移動(dòng)端, 但是不能實(shí)現(xiàn)世界空間的效果,貼屏顯示
ULiteWebView 是一個(gè)極度輕量化的Unity內(nèi)嵌WebView插件,。
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/network/ulitewebview-112841
功能:
網(wǎng)絡(luò)瀏覽 支持Html5 支持Unity與JS自定義接口交互 支持URL SCHEME 可定制的顯示窗體大小
特點(diǎn):
接入簡單,核心文件僅3個(gè),且無需額外配置 輕量化,增加代碼量僅20KB左右 使用簡單,復(fù)雜的功能已封裝為幾個(gè)調(diào)用簡單的API接口
🚩第六款:3D WebView for Windows and macOS
3D WebView for Windows 是一款很好用的瀏覽器插件,支持多個(gè)平臺,有多種顯示效果
這款插件分為五個(gè)版本,分別是Windows and macOS、Android,、Android with Gecko Engine,、IOS 和 UWP / Hololens
3D WebView for Windows and macOS版本 只支持PC端,也就是只支持Windows和Mac電腦
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/3d-webview-for-windows-and-macos-web-browser-154144
官網(wǎng)地址:https://store./ 插件中包含幾個(gè)示例場景:
SimpleWebViewDemo CanvasWebViewDemo AdvancedWebViewDemo CanvasWorldSpaceDemo PopupDemo
插件中還自帶一個(gè)鍵盤,有空間鍵盤和畫布鍵盤兩種,支持英語、西班牙語,、法語,、德語、俄語,、丹麥語,、挪威語和瑞典語幾種語言
鍵盤缺點(diǎn)就是不支持中文輸入,這點(diǎn)很致命,不過可以利用第三方鍵盤來輸入中文,在移動(dòng)端也可以調(diào)用手機(jī)自帶的鍵盤來進(jìn)行中文輸入
系統(tǒng)要求:
Unity 2017.3 或更高版本(由于 Unity 錯(cuò)誤,Windows 不支持 2017.3 - 2018.1 除外) 支持 Mono 和 IL2CPP 帶有 D3D11 圖形的 Windows 8+(x64、x86) 帶有 Metal 圖形的 macOS 10.10+(x64、arm64)
提示:
此軟件包僅支持Windows 和 macOS ,。要支持其他平臺,您可以安裝其他 3D WebView 包(Android,、iOS、UWP或創(chuàng)建自定義包),。所有 3D WebView 包都可以無縫地協(xié)同工作,因此您只需將它們安裝到同一個(gè)項(xiàng)目中,然后 3D WebView 就會在運(yùn)行時(shí)和構(gòu)建時(shí)自動(dòng)檢測并使用正確的插件,。 3D WebView 的原生Windows 和 macOS插件作為預(yù)編譯庫提供,不提供它們的原生源代碼。 MP4 和流媒體的 H.264 視頻編解碼器默認(rèn)禁用,但可以啟用,。 不支持為 Mac App Store 構(gòu)建,。 在 macOS 上,Unity 進(jìn)程使用的動(dòng)態(tài)庫是一個(gè)通用庫,同時(shí)支持 x64 和 arm64。Chromium 進(jìn)程的可執(zhí)行文件目前僅為 x64,但通過 Rosetta 在 M1 Mac 上成功運(yùn)行,。 Windows 和 macOS 插件嵌入了 Chromium Embedded Framework,因此您必須在桌面應(yīng)用程序的關(guān)于頁面或積分中顯示其包含的BSD 樣式許可證的副本,。
🚩第七款:3D WebView for Android
3D WebView for Android 插件也是3D WebView的一種
只支持Android端,功能也是一應(yīng)俱全,但是一樣不能在編輯器中運(yùn)行
值得一提的是這款類型的插件是3D WebView系列中內(nèi)存空間最小的,可能是因?yàn)锳ndroid系統(tǒng)自帶一些庫不需要封裝進(jìn)去節(jié)省了內(nèi)存
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/3d-webview-for-android-web-browser-137030
系統(tǒng)要求
Unity 2017.3 或以上 支持 Mono 和 IL2CPP 帶有 OpenGL 圖形的 Android 5+(armv7、arm64,、x86)
提示:
此軟件包僅支持Android ,。要支持其他平臺,您可以安裝其他 3D WebView 包(Windows 和 macOS、iOS,、UWP或創(chuàng)建自定義包),。所有 3D WebView 包都可以無縫地協(xié)同工作,因此您只需將它們安裝到同一個(gè)項(xiàng)目中,然后 3D WebView 就會在運(yùn)行時(shí)和構(gòu)建時(shí)自動(dòng)檢測并使用正確的插件。 3D WebView 的原生Android插件作為預(yù)編譯庫提供,并沒有提供它們的原生源代碼,。 3D WebView 的原生Android插件無法在編輯器中運(yùn)行,因此在編輯器中運(yùn)行時(shí)默認(rèn)使用模擬 webview 實(shí)現(xiàn),。但是,您實(shí)際上可以通過將適用于 Windows 和 macOS 的 3D WebView安裝到項(xiàng)目中來在編輯器中加載和渲染真實(shí)的 Web 內(nèi)容。 如果您的目標(biāo)是 Oculus 耳機(jī),則推薦使用帶有 Gecko Engine包的Android 3D WebView,。有關(guān)這兩個(gè)包的比較,請參閱比較頁面,。 此包支持通用渲染管線 (URP),但 WebViewPrefab 當(dāng)前不支持“SRP Batcher”選項(xiàng)。因此,在使用 URP 時(shí),您必須在 URP 設(shè)置中禁用 SRP Batcher 或使用 CanvasWebViewPrefab 而不是 WebViewPrefab,。 Android 插件嵌入了來自 Mozilla 的 PDF.js,因此您必須在您的 Android 應(yīng)用程序的關(guān)于頁面或積分中顯示其包含的Apache 2.0 許可證的副本,。
🚩第八款:3D WebView for Android with Gecko Engine
3D WebView for Android with Gecko Engine 這款插件其實(shí)和Android版本的用起來并沒有什么太大的差異
但是這兩個(gè)版本用的瀏覽器內(nèi)核是不一樣的,普通得Android版本的使用的Android自帶的系統(tǒng)WebView作為瀏覽器引擎
而這款Gecko Engine則是嵌入了 Mozilla 的Gecko 瀏覽器引擎,它提供了更好的穩(wěn)定性,并為 VR 耳機(jī)上的鼠標(biāo)交互提供了更好的支持
總而言之這款Gecko Engine更適合VR設(shè)備開發(fā),Android版本更適用于Android移動(dòng)端開發(fā) 關(guān)于這兩款的對比,可以查看官方給的說明自行選擇!官方對比說明:https://support./articles/android-comparison
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/3d-webview-for-android-with-gecko-engine-web-browser-158778
系統(tǒng)要求:
Unity 2018.3 或以上 支持 Mono 和 IL2CPP 帶有 OpenGL 圖形的 Android 5+(armv7、arm64,、x86)
提示:
此軟件包僅支持Android ,。要支持其他平臺,您可以安裝其他 3D WebView 包(Windows 和 macOS、iOS,、UWP或創(chuàng)建自定義包),。所有 3D WebView 包都可以無縫地協(xié)同工作,因此您只需將它們安裝到同一個(gè)項(xiàng)目中,然后 3D WebView 就會在運(yùn)行時(shí)和構(gòu)建時(shí)自動(dòng)檢測并使用正確的插件,。 3D WebView 的原生Android插件作為預(yù)編譯庫提供,并沒有提供它們的原生源代碼,。 3D WebView 的原生Android插件無法在編輯器中運(yùn)行,因此在編輯器中運(yùn)行時(shí)默認(rèn)使用模擬 webview 實(shí)現(xiàn)。但是,您實(shí)際上可以通過將適用于 Windows 和 macOS 的 3D WebView安裝到項(xiàng)目中來在編輯器中加載和渲染真實(shí)的 Web 內(nèi)容,。 與其他 3D WebView 包不同,這個(gè)包目前不支持透明的 webviews,。 此包支持通用渲染管線 (URP),但 WebViewPrefab 當(dāng)前不支持“SRP Batcher”選項(xiàng)。因此,在使用 URP 時(shí),您必須在 URP 設(shè)置中禁用 SRP Batcher 或使用 CanvasWebViewPrefab 而不是 WebViewPrefab。 Android Gecko 包目前不支持 Build App Bundle 構(gòu)建選項(xiàng)(GeckoView 限制),。 Android Gecko 插件嵌入了 Mozilla 的GeckoView 庫的未修改副本,因此您必須在您的 Android 應(yīng)用程序的關(guān)于頁面或積分中顯示其包含的Mozilla 公共許可證的副本,。 Android Gecko 插件嵌入了來自 Mozilla 的 PDF.js,因此您必須在您的 Android 應(yīng)用程序的關(guān)于頁面或積分中顯示其包含的Apache 2.0 許可證的副本。
🚩第九款:3D WebView for iOS
這款則是針對IOS開發(fā)使用,沒什么好說的,內(nèi)容與上面幾款都差不多
功能也是一應(yīng)俱全,但是一樣不能在編輯器中運(yùn)行,所以明擺著想要在Unity編輯器中運(yùn)行看效果就必須下載一個(gè)PC版本的!
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/3d-webview-for-ios-web-browser-137040
系統(tǒng)要求
Unity 2017.3 或以上 iOS 10+,同時(shí)支持 Metal 和 OpenGL
🚩第十款:3D WebView for UWP / Hololens
3D WebView for UWP / Hololens 這款則是針對通用 Windows 平臺 (UWP) 或 Hololens 上以 3D 形式渲染網(wǎng)頁內(nèi)容并與其進(jìn)行互動(dòng)
功能也是一應(yīng)俱全,但是一樣不能在編輯器中運(yùn)行,所以明擺著想要在Unity編輯器中運(yùn)行看效果就必須下載一個(gè)PC版本的!
Unity AssetsStore網(wǎng)址:https://assetstore./packages/tools/gui/3d-webview-for-uwp-hololens-web-browser-166365
系統(tǒng)要求:
Unity 2018.3 或以上 IL2CPP(不支持已棄用的 .NET 運(yùn)行時(shí)) 具有 D3D11 圖形的 Windows 10(x64,、x86,、arm、arm64)上的通用 Windows 平臺 需要XAML 項(xiàng)目的構(gòu)建類型,因?yàn)?XAML WebView 組件用作瀏覽器引擎,。
提示:
這個(gè)包只支持UWP ,。要支持其他平臺,您可以安裝其他 3D WebView 包(Windows 和 macOS、Android,、iOS或創(chuàng)建自定義包),。所有 3D WebView 包都可以無縫地協(xié)同工作,因此您只需將它們安裝到同一個(gè)項(xiàng)目中,然后 3D WebView 就會在運(yùn)行時(shí)和構(gòu)建時(shí)自動(dòng)檢測并使用正確的插件。 3D WebView 的原生UWP插件作為預(yù)編譯庫提供,不提供它們的原生源代碼,。 3D WebView 的原生UWP插件無法在編輯器中運(yùn)行,因此在編輯器中運(yùn)行時(shí)默認(rèn)使用模擬 webview 實(shí)現(xiàn),。但是,您實(shí)際上可以通過將適用于 Windows 和 macOS 的 3D WebView安裝到項(xiàng)目中來在編輯器中加載和渲染真實(shí)的 Web 內(nèi)容。 兼容 Hololens 1 和 2,。 目前,當(dāng)文本輸入集中在 Hololens 上時(shí),不會出現(xiàn)閃爍的文本插入符號,。但是,在桌面上運(yùn)行時(shí)會出現(xiàn)文本插入符號。 由于 UWP 的限制,UWP 插件的 Web 渲染幀率相對較慢(<10 FPS),。 UWP 插件對懸停和拖動(dòng)交互的支持有局限性,。 UWP 插件支持桌面上的透明 web 視圖,但在 Hololens 上不支持。 UWP 插件嵌入來自 Mozilla 的 PDF.js,因此您必須在 UWP 應(yīng)用的關(guān)于頁面或積分中顯示其包含的Apache 2.0 許可證的副本,。
👥總結(jié)
本文對Unity 中一些可以使用的瀏覽器插件做了一個(gè)簡單的系統(tǒng)描述
方便大家在使用Unity 開發(fā)過程中遇到跟瀏覽器相關(guān)的內(nèi)容時(shí)可以參考一下
后面我會針對后面這幾種 3D WebView 系列插件進(jìn)行一個(gè)具體的 綜合系列性文章 進(jìn)行學(xué)習(xí)
會詳細(xì)介紹這款插件具體怎樣使用,和一些重要的API方法,最后也會做一個(gè)案例來進(jìn)行學(xué)習(xí)使用!
如果有時(shí)間的話也想對本文中所有出現(xiàn)的插件都進(jìn)行一個(gè)測試體驗(yàn)并發(fā)布相應(yīng)的文章
其實(shí)我已經(jīng)測試過很多款了,3D WebView 系列效果最好,但是從官網(wǎng)買也確實(shí)貴,幾個(gè)版本下來還要不少錢呢~ 如果真的缺哪個(gè)插件可以在網(wǎng)上找找資源先用著,自己開發(fā)體驗(yàn)的話還是不推薦官網(wǎng)購買,正規(guī)項(xiàng)目當(dāng)然就不用多說啦!
本篇文章也是參考了一位大佬的,并進(jìn)行內(nèi)容增加和豐富,在此感謝!前人種樹后人乘涼~
參考鏈接:https://blog.csdn.net/u014361280/article/details/107034696
那本篇文章就到這里了,有用的話點(diǎn)贊 支持一下吧!咱們下次再見!
🚀往期優(yōu)質(zhì)文章分享
??Unity零基礎(chǔ)到入門 | 游戲引擎 Unity 從0到1的 系統(tǒng)學(xué)習(xí) 路線【全面總結(jié)-建議收藏】! 🧡花一天時(shí)間做一個(gè)高質(zhì)量飛機(jī)大戰(zhàn) 游戲,過萬字Unity完整教程!漂亮學(xué)妹看了直呼666! 💛回憶童年和小伙伴一起玩過的經(jīng)典游戲【炸彈人 小游戲】制作過程+解析 💚通宵一晚做出來的一款類似CS的第一人稱射擊游戲 Demo!原來做游戲也不是很難 🤍爆肝整整一個(gè)周末寫一款類似 皇室戰(zhàn)爭 的 即時(shí)戰(zhàn)斗類 游戲Demo!兩萬多字游戲制作過程+解析! 💙一款類似“恐龍快打”的 橫版街機(jī)格斗 游戲 該如何制作?| 一起來學(xué)習(xí) 順便送源碼【碼文不易,建議收藏學(xué)習(xí)】 💜【超實(shí)用技巧】| 提高寫文的質(zhì)量 和 速率必學(xué)技能: Typora 圖床配置 詳細(xì)說明
🎄如果感覺文章看完了不過癮,可以來我的其他 專欄 看一下哦~ 🎄比如以下幾個(gè)專欄:Unity基礎(chǔ)知識學(xué)習(xí)專欄 ,、Unity游戲制作專欄 、Unity實(shí)戰(zhàn)類項(xiàng)目 和 算法學(xué)習(xí)專欄 🎄可以學(xué)習(xí)更多的關(guān)于Unity引擎 的相關(guān)內(nèi)容哦!直接點(diǎn)擊下面顏色字體 就可以跳轉(zhuǎn)啦!
🎄 Unity基礎(chǔ)知識學(xué)習(xí)專欄 🎄
?? Unity游戲制作專欄 ??
🍇 Unity實(shí)戰(zhàn)類項(xiàng)目 🍇
💦 小Y學(xué)算法 💦