List
TrackerManager.getInstance().findSurface() result
Posted Date: 2021-11-25 1:57     Edited Date: 2021-11-26 1:35     Writer: inactive

Please provide your development details as below;

1. SDK Version:
2. Development Environment: (eg. Unity-Android, Unity-iOS, Native Android, Native iOS)
3. Tracker/Scanner:
4. License Type(Free / Pro-One Time Fee / Pro-Subscription / Enterprise):
5. Target Device(Optional):

We can assist better if you attach screenshots of issues.

Hi,

If there is one method that can know the find surface result??

Currently, there is only one method without return result, so I don't know when the surface is ok.

TrackerManager.getInstance().findSurface();

Thanks.

 

 

 

 

Posted Date: 2021-11-25 5:58     Edited Date: 2021-11-25 5:59     Writer: sjkim

Thank you for your interest in MAXST AR SDK.

 

Yes, The function you mentioned can only be checked by the TrackerManager.getInstance().findSurface() function.

Therefore, You need to add UI/UX to check whether the floor is recognized with visual

 

Please refer to bottom sample code

 

public void VisualFindSurface()
    {
        if (!findSurfaceDone)
        {
            TrackerManager.GetInstance().FindSurface();
            if (startBtnText != null)
            {
                startBtnText.text = "Stop Tracking";
            }
            findSurfaceDone = true;            
        }
        else
        {
            TrackerManager.GetInstance().QuitFindingSurface();
            if (startBtnText != null)
            {
                startBtnText.text = "Start Tracking";
            }
            findSurfaceDone = false;
        }
    }

 

If you have related the MAXST SDK questions, feel free to ask.

 


 
Best regards,

Francisco

MAXST Support Team

Posted Date: 2021-11-25 6:41     Edited Date: 2021-11-25 6:41     Writer: inactive

Hi, MAXST Support Team

 

Thanks for your reply.

But I still very confuse, TrackerManager.GetInstance().FindSurface() this method means to "start to find surface". And this  method should be one async task. If the findsurface() takes a long time, or it does not find any surface, at that time, I put an anchor, it will fail, right?

So the safe method to put an anchor successfully is to check if the surface has already been founded or not?

I dont know if my understanding is right, please help to correct.

 

Thanks.

BRs.

Emily

Posted Date: 2021-11-26 1:35     Edited Date: 2021-11-26 1:35     Writer: sjkim

The Instance Tracker enhances 3D content(you called "anchor") based on the plane found on the camera image momentarily

without preparing a specific target image(prior learning).

The FindSurface() is a based on VIO(Visual Inertial Odometry) technology that works well in low-feature planes

Therefore, FindSurface() is the preferred operation for augmenting 3D content at the correct location.

 

In the video below, TrackerManager.GetInstance().FindSurface() function operates from 10 second to 16 seconds.

https://www.youtube.com/watch?v=tTfMKuxPjh0&list=PLS4FJnCcWItOra0XtdDKi7rOax0mqmT7Z&index=3

 

If you have related the MAXST SDK questions, feel free to ask.

 


 
Best regards,

Francisco

MAXST Support Team