AR을 껐다 켰다하며 유니티 3D World를 같이 쓸 때 주의할 점 입니다.
AR을 껐다 켜는 스크립트 참고는 아래 링크에서 하시면 됩니다.
https://blog.naver.com/washble2/223958898798
1. AR월드의 Position과 3D World의 Position차이
AR월드의 Position과 3D World의 Position이 다르기 때문에 이를 보간하는 작업을 해줘야 됩니다.
아래의 링크를 참고하시면 됩니다.
https://blog.naver.com/washble2/224085744801
AR Camera(AR Face) 와 Main Camera 같이 쓸 때 위치 변화
Unity 6000.0.59f2버전을 사용했습니다 프로젝트에서 Main Camera와 AR Camera를 같이 바꿔가며 써야...
blog.naver.com
2. AR을 실행시킬 때 Camera 세팅
단순히 AR Session과 3D Object들을 분리해두는것으로는 해결이 되지 않습니다.
안드로이드에서는 별 문제 없이 작동합니다만 iOS에서는 AR World와 3D World가 따로놀기 시작합니다...
해결방법 입니다.
- 3D World의 것들을 보는 OverlayCamera를 준비하고 여기서 culling mask에서 AR관련 것들을 빼버립니다(Layer사용)

- XR Origin 하위의 AR Camera는 Culling mask에서 AR관련된 것들만 볼 수 있도록 해줍니다.

- Culling Mask작업이 끝났으면 AR Camera Stack에 Overlay Camera를 넣어줍니다.
(참고로 Stack은 URP버전에 있습니다 Built-in버전에는 없어요)

AR을 사용하게 될 때 AR Camera와, Overlay Camera를 활성화 해주면 AR과 3D World가 함께 잘 나오게 됩니다.
3. iOS에서 AR을 껐다 켤 때 처음 킨 AR의 위치로만 계속 작동 오류 해결
이는 처음 AR실행시킬 때의 위치값을 Reset시켜줘야합니다.
따라서 AR Start 시킬 때 arSession.Reset();함수를 작동시켜줍니다.
위 함수를 작동 시키면 AR을 켤 때마다 다시 위치정보를 가져와서 제대로 위치값을 가져옵니다.
private void SetActiveARSession(bool value)
{
arSession.transform.parent.gameObject.SetActive(value);
arSession.enabled = value;
ARStarted = value;
if(value) { arSession.Reset(); }
}
'Unity' 카테고리의 다른 글
| Unity App Check at Android, Apple With ASP.NET (Unity, ASP.NET에서 App Check) (0) | 2026.05.01 |
|---|---|
| OperationException : Failed to initialize localization, could not preload asset tables (0) | 2026.03.13 |
| Unity IAP Codeless 없이 수동 IAPManager 작성 (0) | 2026.03.09 |
| Unity Stove PCSDK3 연동과 Rank연동 후기 (0) | 2026.03.08 |
| Unity Codeless IAP 사용 때 소비아이템 자동 구매 확정 문제 해결 (0) | 2026.03.05 |