Table of Contents

실제 장면과 정확히 정렬된 3D 콘텐츠 만들기

이 문서는 가상 물체를 실제 공간의 특정 위치에 정확하게 배치하고, AR 경험에서 실제 공간과 정밀하게 정렬하는 방법을 소개합니다.

시작하기 전에

참고

아래 내용과 도구는 EasyAR Mega로 Unity 애플리케이션을 개발하는 과정에만 적용됩니다.

미니 프로그램을 개발 중이라면 Unity Editor를 사용해 주석 만들기 및 업로드(미니 프로그램 개발)를 참고하세요.

Unity 애플리케이션을 개발하지 않지만 Mega 매핑 결과를 보고 싶다면, Mega 사용 가이드의 3D 실세계 메쉬 미리보기를 참고하세요.

Unity 애플리케이션을 개발하지 않지만 시뮬레이션 실행으로 위치 효과를 확인하고 싶다면, Mega 사용 가이드의 시뮬레이션 실행 효과 미리보기를 참고하세요.

이 문서의 내용은 프로젝트에 다음 Unity 패키지가 이미 가져와져 있어야 합니다.

  • com.easyar.sense
  • com.easyar.mega

block 실경 데이터

Mega 개발에서는 3D 콘텐츠 배치를 돕기 위해 여러 실경 데이터를 사용할 수 있습니다.

  • block 메쉬 모델

    alt text

  • 파노라마 이미지(공간 모델 가림막 포함)

    alt text

    참고

    일부 데이터는 파노라마 이미지를 지원하지 않습니다.

  • LCC 3D Gaussian Splatting

    alt text

    참고

    LCC 3D Gaussian Splatting 데이터는 해당 장비로 수집하고 매핑을 완료한 사용 시나리오에서만 사용할 수 있습니다.

block 모델 불러오기

block 데이터 아래의 첫 번째 선택 상자를 클릭하면 block 편집기 데이터 로딩이 시작되며, 로딩 후 Scene 창에서 현재 block의 mesh를 볼 수 있습니다.

  • block mesh는 block 추적 대상 공간과 정렬되어 있으므로, 모델 위에 바로 3D 콘텐츠를 배치할 수 있습니다.
  • block mesh는 카메라 위치에 따라 LOD가 바뀌므로, 사용할 때는 연결이 끊기지 않도록 네트워크를 유지해야 합니다.
  • block mesh는 도구 노드 아래에 저장되며, 편집기 모드에서만 존재하고 최종 앱에는 포함되지 않습니다.

block 노드 아래에 3D 콘텐츠 연결

block 모델을 불러온 뒤, 씬의 Block 노드 아래에 3D 콘텐츠를 자식 노드로 연결합니다.

alt text

주의
  • 3D 오브젝트를 EasyAR.Mega.EditorTool 노드 아래에 두면 안 됩니다. 이 노드는 편집기 도구 전용이며, 일부 상황에서 자동으로 삭제되거나 다시 생성됩니다.
중요
  • 런타임에서 가상 콘텐츠의 렌더링 위치가 올바르도록 하려면 3D 오브젝트를 반드시 block 노드 아래에 배치해야 합니다.

3D 콘텐츠를 정확히 배치하기

다음 단계를 완료하면 가상 콘텐츠를 실제 공간에 정확하게 배치할 수 있습니다.

block 메쉬 모델을 기준으로 배치

씬에서 block mesh를 기준으로 3D 콘텐츠의 위치와 회전을 조정해 원하는 위치와 방향으로 맞춥니다.

  • 편집기가 play 모드로 들어가도 block mesh는 계속 사용할 수 있지만, 카메라 위치에 따른 LOD 전환은 일어나지 않습니다.
  • block mesh는 도구 노드 아래에 저장되며, 편집기 모드에서만 존재하고 최종 앱에는 포함되지 않습니다.

[선택 사항] 파노라마를 기준으로 배치

Panorama Preview Marker 선택 상자를 클릭하면 파노라마 마커를 표시할 수 있습니다.

참고
  • 일부 데이터는 파노라마 이미지를 지원하지 않습니다.

아무 파노라마 마커나 클릭하면 해당 위치에서 파노라마 기준 배치를 할 수 있습니다. 서로 다른 파노라마 마커를 클릭해 파노라마를 전환하면, 여러 시점에서 3D 콘텐츠 위치가 정확한지 확인할 수 있습니다.

alt text

  • 파노라마 마커로 콘텐츠를 배치할 때도 mesh 기반 공간 모델 가림막은 그대로 유효합니다.
  • 편집기가 play 모드로 들어가도 이 기능은 계속 사용할 수 있지만, mesh 기반 공간 모델 가림막의 정확도는 LOD 전환 비활성화의 영향을 받습니다.
  • 파노라마 이미지 마커와 파노라마 이미지 데이터는 도구 노드 아래에 저장되며, 편집기 모드에서만 존재하고 최종 앱에는 포함되지 않습니다.

[선택 사항] LCC 3D Gaussian Splatting을 기준으로 배치

참고

이 부분은 해당 장비로 수집하고 매핑을 완료한 사용 시나리오에 적용됩니다. 다른 장비로 만든 매핑 결과에는 LCC 3DGS 데이터가 포함되지 않습니다.

LCC 3D Gaussian Splatting(그들의 LCC) 기능을 사용한 경우, 3DGS를 기준으로 모델 위치를 조정할 수 있습니다. LCC 데이터 사용법은 LCC 데이터 불러오기 및 Mesh 정렬을 참고하세요.

실경 데이터 결함이 콘텐츠 배치에 미치는 영향

불러온 Block 모델이 수평이 아닐 때

Hierarchy 패널에서 조정할 block 노드를 선택하고, Inspector 패널에서 Rotation을 수정해 모델의 방향이 Unity 편집기에서 올바르게 보일 때까지 조정합니다.

block 노드의 세계 좌표계 Transform은 block의 로컬 좌표계영향을 주지 않으며, 따라서 block 자식 노드로 둔 3D 콘텐츠의 렌더링 결과에도 영향을 주지 않습니다. Transform은 최종 표시 효과와 무관합니다.

주의

block 노드 아래의 EasyAR.Mega.EditorToolTransform을 수정하면 안 됩니다. 그렇지 않으면 편집기 도구가 정상적으로 동작하지 않거나 추적 중 콘텐츠 표시 위치가 잘못될 수 있습니다.

불러온 Block 모델에 파손이나 결손이 있을 때

3D 재구성 과정에서 수집 시야가 충분히 덮이지 않으면 생성된 밀집 모델에 파손이나 결손이 생길 수 있습니다.

파손과 결손

불완전한 모델에서 파손/결손 부분의 3D 콘텐츠 정렬 정확도가 아주 높지 않아도 된다면, 파노라마 마커를 클릭해 파노라마 이미지를 기준으로 3D 콘텐츠를 배치할 수 있습니다. 이후 주변의 다른 파노라마 마커를 클릭해 효과를 확인할 수 있습니다.

파노라마로 배치

파손/결손 부분의 3D 콘텐츠 정렬 정확도가 매우 높아야 한다면, 증분 업데이트 또는 무손실 전체 업데이트로 지도의 보완 또는 갱신이 필요합니다. 일반적으로 이런 영역은 수집 과정에서 덮이지 않았다는 뜻이며, 그런 영역 내부에서는 Mega 위치 효과가 영향을 받습니다. 편집기에서 3D 콘텐츠만 맞추는 것만으로는 충분하지 않습니다.

다음 단계

관련 주제