개발 관련/SW, App 관련

Unity ARCore 설정(예전 버전)

by 소서리스25 2024. 8. 15.
반응형

Unity에서 Google의 ARCore 사용에 대한 설정을 기록을 남겨본다.

현재는 AR Foundation으로 사용되고 있어서 ARCore의 버전은 2021년도에 1.25 버전까지만 나와 있는 상태다.

Releases · google-ar/arcore-unity-sdk (github.com)

 

Releases · google-ar/arcore-unity-sdk

ARCore SDK for Unity. Contribute to google-ar/arcore-unity-sdk development by creating an account on GitHub.

github.com

 

어쨌든 현재 내가 주력으로 Unity 2018.4.3을 사용하고 있어서 업그레이드를 하지 않는 이상 ARCore를 사용할 것이다.

그런데 약 4~5년전 사용할 때와 지금 로봇제작에 응용할 요소를 고려해서 다시금 테스트하려고 했는데 잘 되지 않았다.

분명 그당시 사용할 때 별다른 설정을 하지 않아도 잘 되었는데, 오늘 몇 시간을 테스트해도 잘 안되다가...

 

결국은 성공했기에 설정을 기록으로 남긴다. 

 

- Unity 버전 : 2018.4.3

- ARcore 버전 : arcore-unity-sdk-1.19.0.unitypackage

- Graphics API : OpenGLE3 (OpenGLE2는 제외하지만  상위 패키지는 사용가능)

- 최소 API Level : 24 (Android 7.0)

- Preferences > Google ARCore > Enable Google ARCore SDK Analytics > UnChecked

- Project Settings > Google ARCore

Google ARCore 확인사항
Google ARCore 확인사항

 

- AndroidManifest.xml > ARCore 상위버전에서 미사용시 빌드할 때 unable to merge android manifest 오류발생함.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?xml version="1.0" encoding="utf-8"?>
 
<manifest
        xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.unity3d.player"
        xmlns:tools="http://schemas.android.com/tools">
 
  <application android:label="@string/app_name">
    <activity android:name="com.unity3d.player.UnityPlayerActivity"
              android:theme="@style/UnityThemeSelector"
              android:exported="true" >
 
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
 
      <meta-data android:name="unityplayer.UnityActivity"
        android:value="true" />
      <meta-data tools:replace="android:value"
        android:name="com.google.ar.core"
        android:value="required"/>
 
    </activity>
  </application>
 
  <uses-sdk
        android:minSdkVersion="24"
        android:targetSdkVersion="28"/>
  <uses-feature android:name="android.hardware.camera"/>
 
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.CAMERA"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 
</manifest>
cs

 

위에서 중요한 것은 sdk 버전과 다음 사항이다.

필요한 설정 요소
필요한 설정 요소

 

일단 이렇게 하고 빌드하니 정상적으로 작동 되었다.

 

근데 정말 4~5년 전에는 이런 설정 한 기억이 없는데... 이런거 안해도 잘 되었던 것 같은데 왜 그런지 모르겠다.

...

 

반응형

댓글