본문으로 건너뛰기
버전: 1.12.0

세션 시작

VLSDK의 VL 요청은 세션 단위로 관리됩니다. 이 가이드에서는 세션을 시작, 중지, 초기화하는 방법과 기기 자세에 따른 자동 관리 기능을 안내합니다.

자동 시작

VLSDKManager는 기본적으로 Play On Awake가 활성화되어 있어, Scene이 시작되면 별도의 코드 없이 VL 요청을 자동으로 시작합니다.

play_on_awake

수동 제어

특정 타이밍에 세션을 제어해야 하는 경우 Play On Awake를 비활성화한 뒤 아래 메서드를 사용합니다.

세션 시작

// VL 요청 세션을 시작합니다.
m_VLSDKManager.StartSession();

세션 중지

현재 상태와 인식된 전역 위치를 유지한 채 VL 요청만 중지합니다.

// VL 요청만 중지합니다. 인식 결과는 유지됩니다.
m_VLSDKManager.StopSession();

세션 초기화

내부 상태와 인식된 전역 위치를 모두 초기화합니다. 상태가 INITIAL로 전환되며 OnStateChanged 이벤트가 호출됩니다.

// 모든 상태를 초기화합니다.
m_VLSDKManager.ResetSession();

StopSession()일시정지(위치 유지), ResetSession()처음부터 다시 시작(위치 초기화)으로 이해하면 됩니다.

자세 기반 자동 관리

VLSDK는 기기의 자세에 따라 VL 요청을 자동으로 관리합니다.

VL 요청 자동 중단

바닥이나 하늘처럼 VL 인식에 적합하지 않은 방향을 바라볼 때 VL 요청이 일시적으로 중단됩니다.

  • 디바이스의 pitch가 -20° ~ 20° 범위를 벗어나는 경우
  • 디바이스의 roll이 -100° ~ 100° 범위를 벗어나는 경우

자동 초기화

디바이스가 상하로 뒤집히면(roll이 ±100° 초과) 세션이 자동으로 초기화됩니다. VIO 자세값에 문제를 일으킬 수 있기 때문입니다.

자동 초기화 비활성화

앱의 사용 시나리오에 따라 자세 기반 자동 초기화가 불필요할 수 있습니다.

// 기기 자세에 의한 자동 초기화를 비활성화합니다.
m_VLSDKManager.EnableResetByDevicePose(false);
경고

Unity Editor 환경에서는 데이터셋이 설정되어 있어야 VL 요청을 보낼 수 있습니다. Editor에서 테스트하기를 참고하세요.