Unity 검색

Unity, 기본 모바일 애플리케이션에 라이브러리로 사용 가능

2019년 6월 17일 게임 | 2 분 소요
다루는 주제
공유

Unity 2019.3부터 Unity를 기본 Android/Java 및 iOS/Objective C 애플리케이션이 제어하는 라이브러리로 사용할 수 있도록 지원합니다. 이를 통해 AR 및 기타 Unity 기능을 애플리케이션에 쉽게 추가할 수 있습니다.

기본 플랫폼 기술(Android/Java, iOS/Objective C 등)을 사용하는 개발자도 Unity에서 제공하는 기능을 애플리케이션과 게임에 추가하고자 하는 경우가 있습니다. Unity 2019.3.a2부터는 Unity 런타임 컴포넌트와 콘텐츠를 기본 플랫폼 프로젝트로 통합하여 Unity를 라이브러리로 사용할 수 있습니다.

즉, 증강 현실(AR), 3D/2D 실시간 렌더링, 2D 미니 게임과 같은 Unity 기반의 기능을 기본 모바일 애플리케이션에 직접 추가할 수 있습니다.

원리: 프로젝트 구조의 변경

Unity 런타임 라이브러리는 기본 애플리케이션 내에서 로드/활성화/언로드하는 시기와 방법을 관리하기 위한 컨트롤을 제공합니다.

전체적인 모바일 애플리케이션 빌드 프로세스는 동일하며, Unity에서 iOS Xcode 및 Android Gradle 프로젝트를 생성합니다.

하지만 이 기능을 사용하기 위해서 Unity로 생성된 iOS Xcode 및 Android Gradle 프로젝트의 구조를 다음과 같이 변경하였습니다.

  • 모든 소스 파일과 플러그인을 포함하는 라이브러리 부분(iOS 프레임워크 및 AAR(Android Archive) 파일)
  • 애플리케이션 표현 데이터를 포함하고 라이브러리 부분을 실행하는 씬 런처(thin launcher) 부분

Xcode/Android Gradle 프로젝트의 변경 사항에 대한 자세한 내용은 포럼 게시글에서 확인할 수 있습니다.

또한 기본 샘플 프로젝트를 포함하여 iOS 및 Android에서 Unity를 라이브러리로 통합하는 방법에 대한 단계별 지침을 제공합니다.

참고로, Unity 라이브러리로 사용하려면 Android/Java iOS/Objective C 애플리케이션의 아키텍처를 알아야 합니다.

제한 사항

Unity를 기본 애플리케이션에서 호스팅되는 라이브러리로 사용하는 여러 시나리오를 테스트했습니다. 그러나 Unity 이상 런타임의 라이프 사이클을 제어하지 않기 때문에 적용했을 원활히 작동하지 않을 수도 있습니다. 그 예로 다음과 같은 사례가 있습니다.

  • Unity를 라이브러리로 사용하는 경우 전체 화면 렌더링만 가능하며, 화면 일부를 렌더링하는 것은 지원되지 않습니다.
  • Unity 런타임 인스턴스를 2개 이상 로드할 수 없습니다.
  • 제대로 작동하기 위해서는 타사 플러그인(기본또는 관리형)을 적용해야 할 수도 있습니다.

최신 기술을 활용한 혁신적인 마케팅 캠페인

Unity를 라이브러리로 사용할 수 있게 됨으로써 다양한 산업 분야의 수많은 사용 사례에 적용할 수 있게 되어 굉장한 이점을 안겨줍니다. 특히 브랜드 및 크리에이티브 에이전시의 경우 AR을 기본 모바일 애플리케이션에 간편하게 바로 추가할 수 있습니다.

최신 기술을 활용하는 브랜드의 경우 기존의 마케팅 캠페인에 AR 기술을 더했을 때 기대할 수 있는 가치를 잘 알고 있습니다. 또한 Unity를 라이브러리로 사용하면 프로세스가 간소화됩니다. 브랜드 및 크리에이티브 에이전시는 AR을 구현하기 위해 애플리케이션을 다시 빌드하거나, Unity를 라이브러리로 사용하기 위해 솔루션을 만들 필요가 없습니다.

AR 마케팅에 대해 소비자는 호의적이며, 브랜드는 AR을 통해 소비자와 밀접한 관계를 형성할 수 있습니다. 유니티는 마케팅의 발전을 촉진하는 이러한 솔루션을 제공하게 되어 매우 기쁘게 생각합니다.

브랜드 및 크리에이티브 에이전시에서 어떤 방식으로 Unity를 활용하고 있는지 자세히 알아보려면 솔루션 페이지를 확인해 보세요.

2019년 6월 17일 게임 | 2 분 소요
다루는 주제