Instant Tracker

카메라 프레임 안의 평면 이미지를 순간적으로 인식, 추적하고 센서로 공간을 읽습니다. 화면을 탭하여 원하는 위치에 콘텐츠를 증강시킬 수 있습니다.

Tracker 시작 / 종료
Tracking 정보 이용
Instant Tracker 씬 구성

Tracker 시작 / 종료

Tracker를 시작 / 종료하려면 다음 코드를 참고하세요.

InstantTrackerSample.cs

void Update()
{
    ...
    TrackerManager.GetInstance().StartTracker(MaxstARUtils.TrackerMask.INSTANT_TRACKER);
    SensorDevice.GetInstance().Start();
    ...
}

void OnApplicationPause(bool pause)
{
    ...
    SensorDevice.GetInstance().Stop();
    TrackerManager.GetInstance().StopTracker();
    ...
}

void OnDestroy()
{
    SensorDevice.GetInstance().Stop();
    TrackerManager.GetInstance().StopTracker();
    TrackerManager.GetInstance().DestroyTracker();
}

Tracking 정보 이용

Tracking 정보를 이용하려면 다음 코드를 참고하세요.

InstantTrackerSample.cs

void Update()
{
    ...
    TrackingResult trackingResult = TrackerManager.GetInstance().GetTrackingResult();
    if (trackingResult.GetCount() == 0)
    {
        return;
    }
    Trackable trackable = trackingResult.GetTrackable(0);
    Matrix4x4 matrix = trackable.GetPose();
    Matrix4x4 translation = Matrix4x4.identity;
    Matrix4x4 orientationMatrix = Matrix4x4.identity;
    Quaternion orientationQuaternion = Quaternion.identity;
    orientationQuaternion.eulerAngles = new Vector3(0, 0, rotationDegree);
    orientationMatrix = MatrixUtils.MatrixFromQuaternion(orientationQuaternion);
    translation.m03 = positionX;
    translation.m13 = positionY;
    matrix *= translation;
    matrix *= orientationMatrix;
    instantTrackable.OnTrackSuccess(trackable.GetId(), trackable.GetName(), matrix);
}

Instant Tracker 씬 구성

  1. 유니티용 MAXST AR SDK를 설치하세요.

  2. 새로운 씬을 생성하세요.

  3. Default로 존재하는 Main Camera를 삭제한 후, Assets > MaxstAR > Prefabs > ARCamera, InstantTrackable을 씬에 추가하세요.

    instantPrefab

    ※ 빌드할 경우 ARCamera에 라이선스 키를 추가해야 합니다.

  4. 빈 객체를 생성하고 Assets > MaxstARSamples > Scripts > InstantTrackerSample 스크립트를 컴포넌트로 추가하세요.

    instantSample

  5. Button을 생성하고 적당한 위치에 배치한 후, Click Event 에 InstantTrackerSample 스크립트의 OnClickStart () 함수를 등록합니다.

    instantBtn

    instantDragObject

    instantClickEvent

  6. Button의 Text를 Instant Tracker Sample 스크립트의 Start Btn Text에 드레그합니다.

    instantText

  7. InstantTrakable 하위에 Cube를 생성한 후, Scale을 0.1 ~ 0.3 사이로 조절합니다.

    instantCube

  8. Play 후 버튼을 클릭하면, 공간을 즉석으로 학습하고 Cube가 증강됩니다.