์ด๋ฒ ๊ธ์์๋ ARCore SDK ๋ฅผ ์ฌ์ฉํ์ ๋ ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์จ๋ณผ๊ป
1. ์ง์ ๊ธฐ๊ธฐ ์ ํ
์ง์ ๊ธฐ๊ธฐ๋ ์ฌ๊ธฐ์ ์ ๋ฆฌ๋์ด์๋ค.
URL :ย https://developers.google.com/ar/discover/
๋ํ์ ์ธ๊ฑด ๊ตฌ๊ธ ํฝ์ ํฐ 1, 2
์ผ์ฑ ๊ฐค๋ญ์ S7, S8, S8+, Note8์ด๋ค.
์ด ์ธ์ ํฐ์ ์์ ์ค์น๋ ๋ชปํ๊ฒ ๋ง๋๊ฒ ์ค์ํ๋ค.
1) ๊ตฌ๊ธ ๊ฐ๋ฐ์ ์ฝ์ > ์ฑ > ๊ธฐ๊ธฐ ์นดํ๋ก๊ทธ์ ๋ค์ด๊ฐ๋ค.
2) ์๋ ์ด๋ฏธ์ง ์ฒ๋ผ ํฝ์ ํฐ 1, 2, ์ผ์ฑ ๊ฐค๋ญ์ S7, S7 Edge, S8, S8+, Note8๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ ์ธ์ํจ๋ค.
์~์ฒญ ๋ง์ผ๋๊น ์์ด ์ข ์ํ๋ค. ๋ชจ๋ ์ ์ธํ๊ธฐ ๋ฒํผ์ด ์์๊บผ ๊ฐ์๋ฐ ๋๋ ๋ชป์ฐพ๊ฒ ๋๋ผ.
2. Android ARCore SDK ์ค์น ํ์ด์ง๋ก ์ด๋
ARCore๋ฅผ ์ด์ฉํ ์ฑ์ ARCore SDK ๋ผ๋ ์ฑ์ด ์ค์น๊ฐ ๋์ด ์์ด์ผํ๋ค.
๊ตฌ๊ธ ํ๋ ์ด ์คํ ์ด ์ฃผ์๋ ์ฌ๊ธฐ๋ค :ย https://play.google.com/store/apps/details?id=com.google.ar.core
์๋๋ ๊ฐ์ธ์ด ์ง์ apk๋ฅผ ์ค์นํ์ด์ผํ๋๋ฐ ์ด์ ํ๋ ์ด ์คํ ์ด์ ์ฌ๋ผ๊ฐ ์๋๋ผ.
๊ทธ๋์ ์ฐ๋ฆฌ๊ฐ ํ ์ผ์ ARCore SDK์ ์ค์น์ ๋ฌด๋ฅผ ํ๋ณํด์ย ๋ฏธ์ค์น๋ฉด ARCore SDK ์ค์น ํ์ด์ง๋ก ๋๋ ค์ฃผ๋ฉด ๋๋๋ค.
์ง๊ธ์ ๋ณ๋๋ก ๋ค์ด๋ฐ์์ผ ํ์ง๋ง ์๊ฐ์ด ์ง๋๋ฉด ๊ตฌ๊ธ ํฌํ ๋ ๊ตฌ๊ธ ๋งต์ฒ๋ผ ๋ฏธ๋ฆฌ ์ค์น๋์ด์ ๋์ฌ๊บผ๋ผ๊ณ ๋ณธ๋ค.
์์ ์ AR Controller ์คํฌ๋ฆฝํธ์ย _QuitOnConnectis ํจ์๋ก๊ฐ๋ค.
์ด ํจ์์๊ฑฐ ์ธ์ ์ฐ๊ฒฐ์ํ๋ฅผ ์ฒดํฌํด์ย SessionConnectionState.ConnectToServiceFailed ์ํ์ด๋ฉด ARCore SDK ํ์ด์ง๋ก ๋ณด๋ธ๋ค.
if (Session.ConnectionState == SessionConnectionState.ConnectToServiceFailed)
{
installSDKObj.SetActive(true);
Text text = installSDKObj.GetComponentInChildren<Text>();
text.text = "๊ตฌ๊ธ ARCore SDK๊ฐ\n์ค์น๋์ด ์์ด์ผ ํฉ๋๋ค.\n\n์ ์ํ\n์ค์น ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.";
_ShowAndroidToastMessage("๊ตฌ๊ธ ARCore SDK๊ฐ ์ค์น๋์ด ์์ด์ผ ํฉ๋๋ค. ์ค์น ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.");
m_IsQuitting = true;
Invoke("OpenSDKPage", 4.5f);
Invoke("DoQuit", 5f);
}
๋ง์ผ์ผ๋ก ๋ณด๋ด๋ฒ๋ฆฐ๋ค.
private void OpenSDKPage()
{
Application.OpenURL("market://details?id=com.google.ar.core");
}
์ฌ๊ธฐ๊น์ง ํ๋ฉด ์ผ๋ฐ์ฌ์ฉ์ ์ค์น ์์๋ ์ด๋ ๋ค.
1. [๋๋์ง์ก๊ธฐ๊ฒ์]์ ์ค์น
2. [๋๋์ง์ก๊ธฐ๊ฒ์]์ ์คํ
3. ํ๋ฉด์ "๊ตฌ๊ธ ARCore SDK๊ฐ ์ค์น๋์ด ์์ด์ผ ํฉ๋๋ค. ์ ์ํ ์ค์น ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค"ย
ย ๋ผ๋ ๋ฉ์ธ์ง๋ฅผ ๋ณด๊ณ ๊ตฌ๊ธํ๋ ์ด์คํ ์ด๋ก ํ๋ฉด์ด ์ ํ๋๋ค.
4. ARCore SDK ์ค์นํ์ด์ง์์ ์ฑ์ ์ค์นํ๋ค.
5. ์ค์น ์๋ฃํย [๋๋์ง์ก๊ธฐ๊ฒ์]์ ์คํ์ํจ๋ค.
6. ์นด๋ฉ๋ผ ๊ถํ ๋์๋ฅผ ์ป๋๋ค.
7. ๊ฒ์์ ํ๋ ์ดํ๋ค.
์ฌ๊ธฐ ๊น์ง๊ฐ [ARCore๋ฅผ ์ฌ์ฉํ ๋ชจ๋ฐ์ผ ์ฆ๊ฐํ์ค ๋๋์ง์ก๊ธฐ ๊ฒ์ ๋ง๋ค๊ธฐ] ์ข ๋ฃ๋ค.
๊ฐ์ธ์ ์ผ๋ก ARCore์ ๊ธฐ๋ฅ์ด๋ ์ง์์ ์ข์๋ฐ AR์ด ์ด๋ฏธ ๋ณ์ ์ด๋ผ ์ด๋ป๊ฒํด๋ ์ด์๋ ๊บผ ๊ฐ์ง์์ ๋๋์ด๋ค.
๊ทธ๋๋ง ARCore๊ฐ ์ ์ ๋์ด๋๊ณ ๊ธฐ๊ธฐ์ SDK๊ฐ ๋ด์ฅ๋์ด ๋์ค๋ฉด ๊ทธ๋๋ ์กฐ๊ธ์ ํฅํ์ง ์์๊น ์๊ฐํด๋ณธ๋ค.
์๊ณ ๋ง์ผ์ จ์
์กฐํ
๊ฐ์ถ
์ถ์ฐฌ