ARCore全稱為GooglePlayServicesforAR,這是谷歌官方推出構(gòu)建增強(qiáng)現(xiàn)實(shí)應(yīng)用的AndriodSDK,將虛擬內(nèi)容,通過(guò)手機(jī)攝像頭,與看到的現(xiàn)實(shí)世界整合,理解和跟蹤它相對(duì)于現(xiàn)實(shí)世界的位置。它可以利用云軟件和設(shè)備硬件的進(jìn)步,將數(shù)字對(duì)象放到現(xiàn)實(shí)世界中,為用戶帶去很多既有用又有趣的體驗(yàn),給你帶來(lái)身臨其境的感受,雖然對(duì)比那些精致的VR游戲沒(méi)有那么好,但勝在體驗(yàn)起來(lái)方便快捷。同時(shí)也是增強(qiáng)現(xiàn)實(shí)專用的 Android SDK,可在很大程度上改變今后的工作和娛樂(lè)方式,當(dāng)我們配合著游戲運(yùn)行時(shí),安裝后直接啟動(dòng)游戲就可以體驗(yàn)到更加真實(shí)的ar效果!arcore支持虛擬對(duì)象的放置與跟蹤、環(huán)境理解和光線估計(jì)。虛擬對(duì)象的放置和跟蹤使用戶能夠?qū)⑻摂M物體放置在現(xiàn)實(shí)世界中,并能夠跟隨物體的運(yùn)動(dòng)。軟件支持國(guó)內(nèi)大部分機(jī)型,比如華為、小米、三星以及vivo等等安卓系統(tǒng),還可以和其他AR技術(shù)相結(jié)合搭配使用。感興趣的小伙伴歡迎下載使用!
1、動(dòng)作捕捉:使用手機(jī)的傳感器和相機(jī),ARCore可以準(zhǔn)確感知手機(jī)的位置和姿態(tài),并改變顯示的虛擬物體的位置和姿態(tài)
2、環(huán)境感知:感知平面,比如你面前的桌子、地面,在虛擬空間中準(zhǔn)確復(fù)現(xiàn)這個(gè)平面
3、光源感知:使用手機(jī)的環(huán)境光傳感器,感知環(huán)境光照情況,對(duì)應(yīng)調(diào)整虛擬物體的亮度、陰影和材質(zhì),讓它看起來(lái)更融入環(huán)境。
【環(huán)境理解】
ARCore會(huì)檢測(cè)特征點(diǎn)和平面,從而不斷提高對(duì)現(xiàn)實(shí)世界環(huán)境的理解。
ARCore可以查找看起來(lái)位于常見(jiàn)水平或垂直表面(例如桌子或墻)上的成簇特征點(diǎn),并將這些表面作為幾何平面提供給您的應(yīng)用。ARCore還可以確定每個(gè)幾何平面的邊界,并將這些信息提供給您的應(yīng)用。您可以使用這些信息將虛擬對(duì)象放在平坦的表面上。
由于ARCore使用特征點(diǎn)來(lái)檢測(cè)平面,因此可能無(wú)法正確檢測(cè)像白墻一樣沒(méi)有紋理的平坦表面。
【深度理解】
ARCore可以使用受支持設(shè)備中的主RGB攝像頭創(chuàng)建深度圖,其中包含有關(guān)表面與給定點(diǎn)之間的距離的數(shù)據(jù)。您可以使用深度圖提供的信息實(shí)現(xiàn)沉浸式逼真的用戶體驗(yàn),例如使虛擬對(duì)象與觀察到的表面準(zhǔn)確碰撞,或使虛擬對(duì)象出現(xiàn)在真實(shí)對(duì)象的前面或后面。
【光估測(cè)】
ARCore可以檢測(cè)其環(huán)境光線的相關(guān)信息,并為您提供給定攝像頭圖像的平均光強(qiáng)度和色彩校正。這些信息可讓您在與周圍環(huán)境相同的條件下照亮您的虛擬對(duì)象,從而提升其真實(shí)感。
當(dāng)您的手機(jī)在世界范圍內(nèi)移動(dòng)時(shí),ARCore 使用稱為同步定位和地圖繪制(SLAM)的過(guò)程來(lái)了解手機(jī)相對(duì)于周圍世界的位置。ARCore 在捕獲的相機(jī)圖像中檢測(cè)視覺(jué)上不同的特征,稱為 特征點(diǎn),并使用這些點(diǎn)來(lái)計(jì)算其位置變化。視覺(jué)信息與來(lái)自設(shè)備 IMU 的慣性測(cè)量值相結(jié)合,以估計(jì)相機(jī)相對(duì)于世界隨時(shí)間推移的姿態(tài)(位置和方向)。
通過(guò)將渲染 3D 內(nèi)容的虛擬相機(jī)的姿勢(shì)與 ARCore 提供的設(shè)備相機(jī)的姿勢(shì)對(duì)齊,開(kāi)發(fā)人員能夠從正確的角度渲染虛擬內(nèi)容。渲染的虛擬圖像可以疊加在從設(shè)備攝像頭獲得的圖像之上,使其看起來(lái)好像虛擬內(nèi)容是現(xiàn)實(shí)世界的一部分。
1、借助 ARCore 對(duì)現(xiàn)實(shí)世界的理解,您能夠以一種與現(xiàn)實(shí)世界無(wú)縫整合的方式添加物體、注釋或其他信息。
2、您可以將一只打盹的小貓放在咖啡桌的一角,或者利用藝術(shù)家的生平信息為一幅畫添加注釋。
3、運(yùn)動(dòng)跟蹤意味著您可以移動(dòng)和從任意角度查看這些物體。
4、即使您轉(zhuǎn)身離開(kāi)房間,當(dāng)您回來(lái)后,小貓或注釋還會(huì)在您添加的地方。
1、使用即時(shí)展示位置
點(diǎn)按屏幕以放置對(duì)象。在屏幕上顯示全息對(duì)象后,請(qǐng)確保繼續(xù)來(lái)回移動(dòng)設(shè)備,以便ARCore可以獲取有關(guān)周圍環(huán)境的足夠數(shù)據(jù),從而準(zhǔn)確錨定虛擬對(duì)象。
一旦ARCore檢測(cè)到Surface幾何圖形,并在放置對(duì)象的區(qū)域確立了可跟蹤對(duì)象,對(duì)象姿勢(shì)便會(huì)自動(dòng)進(jìn)行更新。
在圖1中,Instant Placement已停用,且Surface幾何圖形未定義。位于臺(tái)球桌右側(cè)地板上的對(duì)象(四個(gè)小藍(lán)點(diǎn))出現(xiàn)翻轉(zhuǎn)狀態(tài),其姿態(tài)則未定義。
在圖2中,從齒輪圖標(biāo)下的菜單啟用了Instant Placement。
在圖3中,在啟用Instant Placement功能后,場(chǎng)景中放置了一個(gè)新對(duì)象。它以灰度模式顯示,而非彩色顯示,表示系統(tǒng)尚未將其更正為正確的姿勢(shì)。
在圖4中,當(dāng)檢測(cè)到Surface幾何圖形(由可跟蹤的網(wǎng)格線描述)時(shí),新對(duì)象會(huì)變?yōu)椴噬?,并且其姿?shì)準(zhǔn)確無(wú)誤。
2、使用深度
啟用深度后,ARCore會(huì)考慮場(chǎng)景中對(duì)象的幾何圖形和位置,并計(jì)算場(chǎng)景中對(duì)象相對(duì)于場(chǎng)景中其他對(duì)象的位置。它可讓場(chǎng)景中的對(duì)象遮擋住對(duì)象,并讓您的應(yīng)用具有真實(shí)感。
在圖1中,深度已停用。一個(gè)對(duì)象會(huì)放在池表下。
在圖2中,當(dāng)設(shè)備在池表中移動(dòng)時(shí),無(wú)論場(chǎng)景中的物體是什么,該對(duì)象看起來(lái)都跟隨設(shè)備。
在圖3中,啟用了深度。
在圖4中,當(dāng)設(shè)備在場(chǎng)景中移動(dòng)時(shí),對(duì)象現(xiàn)在被池表遮擋。
如需開(kāi)始在 Android 上使用 ARCore,您可以運(yùn)行 ARCore SDK 附帶的 hello_ar_kotlin 或 hello_ar_java 示例應(yīng)用。這些示例應(yīng)用使用 OpenGL,這是一種用于渲染 2D 和 3D 矢量圖形的編程接口。這些應(yīng)用會(huì)顯示檢測(cè)到的所有平面,并允許用戶點(diǎn)按平面來(lái)放置 3D 模型。
1、設(shè)置您的開(kāi)發(fā)環(huán)境
安裝 Android SDK Platform 7.0(API 級(jí)別 24)或更高版本的 Android Studio 3.1 版或更高版本。
2、打開(kāi)示例項(xiàng)目
(1)在 Android Studio 中,克隆 ARCore SDK GitHub 代碼庫(kù)。
為此,您可以采用多種方式:
對(duì)于現(xiàn)有的 Android Studio 安裝:
從 Git 菜單中選擇 Clone。
在 Version control 下拉菜單中,選擇 Git 作為版本控制系統(tǒng)。
在 URL 字段中,輸入 ARCore GitHub 代碼庫(kù)
(2)按如下方式打開(kāi)一個(gè)示例項(xiàng)目(您必須明確打開(kāi)一個(gè)項(xiàng)目才能構(gòu)建并運(yùn)行該項(xiàng)目)。
從 File 菜單中選擇 Open。
在 arcore-android-sdk/samples 文件夾中,選擇 hello_ar_kotlin 或 hello_ar_java 文件夾,然后點(diǎn)擊 Open。
3、準(zhǔn)備設(shè)備或模擬器
您可以在受支持的設(shè)備或 Android 模擬器上運(yùn)行 AR 應(yīng)用。您必須先在模擬器上更新 AR 服務(wù)的 Google Play 服務(wù),然后才能運(yùn)行該應(yīng)用。
4、運(yùn)行示例
確保您的 Android 設(shè)備已連接到開(kāi)發(fā)機(jī)器,然后點(diǎn)擊 Android Studio 中的 Run 。
Android Studio 將您的項(xiàng)目構(gòu)建為可調(diào)試的 APK,安裝該 APK,然后在您的設(shè)備上運(yùn)行該應(yīng)用。
如果適用于 AR 的 Google Play 服務(wù)缺失或已過(guò)期,系統(tǒng)可能會(huì)提示您安裝或更新。選擇 CONTINUE 可從 Google Play 商店安裝它,或按照更新 AR 版 Google Play 服務(wù)中的說(shuō)明手動(dòng)更新該應(yīng)用。
借助 hello_ar_java 應(yīng)用,您可以在檢測(cè)到的 AR 平面上放置一個(gè)三維 ARCore 典當(dāng)。它通過(guò) Android GL SurfaceView 實(shí)現(xiàn),Android GL SurfaceView 用于渲染相機(jī)預(yù)覽和基本 AR 對(duì)象,例如平面和錨點(diǎn)??梢栽?com/google/ar/core/examples/java/common/samplerender 中找到 hello_ar_java 的示例渲染框架。
注意:hello_ar_java 中的生命周期方法與 OpenGL 應(yīng)用中通常提供的生命周期方法不同。為確保您自己的應(yīng)用的 AR 設(shè)置正確無(wú)誤,請(qǐng)遵循 hello_ar_java 中的生命周期管理邏輯。
5、使用即時(shí)展示位置
借助 Instant Placement API,用戶可以將 AR 對(duì)象置于屏幕上,而無(wú)需等待 ARCore 檢測(cè)表面幾何圖形。隨著用戶繼續(xù)在環(huán)境中移動(dòng),系統(tǒng)會(huì)實(shí)時(shí)優(yōu)化對(duì)象放置位置。一旦 ARCore 能夠在放置 AR 對(duì)象的區(qū)域中檢測(cè)到正確的姿態(tài),白色對(duì)象便會(huì)自動(dòng)更新為姿態(tài)準(zhǔn)確,并變?yōu)椴煌该鳌?/p>
hello_ar_java 中會(huì)自動(dòng)啟用 Instant Placement。點(diǎn)按屏幕上的齒輪圖標(biāo),然后從下拉菜單中選擇 Instant Placement。您應(yīng)該已經(jīng)選中 Enable Instant Placement 復(fù)選框。
點(diǎn)按屏幕以放置對(duì)象。在屏幕上顯示全息對(duì)象后,請(qǐng)務(wù)必繼續(xù)來(lái)回移動(dòng)設(shè)備,以便 ARCore 可以獲取關(guān)于周圍環(huán)境的足夠數(shù)據(jù)來(lái)準(zhǔn)確錨定虛擬對(duì)象。
ARCore 可以在運(yùn)行 Android 7.0 (Nougat) 及更高版本系統(tǒng)的多種符合資格的 Android 手機(jī)上使用。 在開(kāi)發(fā)者預(yù)覽版期間,ARCore 支持以下設(shè)備(如下圖)
后來(lái)擴(kuò)大了其它設(shè)備的支持(如下圖)
1、為什么打開(kāi)應(yīng)用后黑屏或閃退?
因?yàn)锳R需要相機(jī)權(quán)限,所以應(yīng)用沒(méi)有檢查權(quán)限時(shí)會(huì)發(fā)生異常退出。如果相機(jī)權(quán)限已打開(kāi),則是應(yīng)用自身問(wèn)題。
2、為什么虛擬物體容易飄或平面長(zhǎng)時(shí)間識(shí)別不出來(lái)?
因?yàn)锳R需要現(xiàn)實(shí)環(huán)境有一些圖案特征,如果手機(jī)的攝像頭朝著潔白的墻壁、純色的地面等會(huì)無(wú)法工作,所以AR物體容易飄。
3、為什么安裝了ARCore,應(yīng)用仍提示安裝ARCore?
因?yàn)槭謾C(jī)安裝的ARCore版本低于應(yīng)用需要的ARCore版本,所以ARCore仍然提示安裝。雖然ARCore沒(méi)有圖形界面,但可以在系統(tǒng)設(shè)置的應(yīng)用列表中找到ARCore,查看版本號(hào)和卸載舊版本。
4、為什么很多應(yīng)用一開(kāi)始要拿著手機(jī)掃描地面?
因?yàn)锳R需要一個(gè)水平面來(lái)固定虛擬物體,地面和桌面是比較好的水平面,所以要先掃描地面。但在地面固定虛擬物體不是唯一的方式,還可以在圖像上固定、在空間固定、點(diǎn)擊屏幕固定。
5、ARCore反復(fù)提示“已停止運(yùn)行”并且無(wú)法工作?
部分機(jī)型安裝了1.8版,ARCore會(huì)反復(fù)提示“已停止運(yùn)行”。若出現(xiàn)該問(wèn)題,請(qǐng)更換成穩(wěn)定的1.7版或最新版本的ARCore。
v1.45.242050283:
Google Play Services for AR會(huì)自動(dòng)安裝和更新到符合條件的設(shè)備上,因此Google Play Store中具有AR功能的應(yīng)用程序無(wú)需下載和安裝任何進(jìn)一步的內(nèi)容即可運(yùn)行。
本版本新增功能:
?更新了支持的設(shè)備列表。
訪問(wèn)網(wǎng)絡(luò):允許程序訪問(wèn)網(wǎng)絡(luò)連接,可能產(chǎn)生GPRS流量
獲取網(wǎng)絡(luò)狀態(tài):允許獲取網(wǎng)絡(luò)信息狀態(tài)
獲取應(yīng)用大小:允許一個(gè)程序獲取任何package占用空間容量
開(kāi)機(jī)自動(dòng)允許:允許程序開(kāi)機(jī)自動(dòng)運(yùn)行
顯示系統(tǒng)窗口:允許程序顯示系統(tǒng)窗口
關(guān)于本站|下載幫助|下載聲明|軟件發(fā)布|聯(lián)系我們
Copyright ? 2005-2025 m.daaijiaoyu.cn.All rights reserved.
浙ICP備2024132706號(hào)-1 浙公網(wǎng)安備33038102330474號(hào)