Skip to main content
13-Aquamarine
August 8, 2022
Question

Wayfinder Widget Open Beta!

  • August 8, 2022
  • 8 replies
  • 13067 views

As of Vuforia Studio 9.7.0, the Wayfinder widget is no longer in beta. It is now available for use in production environments. 

 

With the release of Studio 9.5.0, we are launching an open beta for our latest widget - the Wayfinder.

What is it?

The open beta allows Studio users to test our new Wayfinder widget in non-production experiences. The Wayfinder widget allows you to place waypoints that help lead users towards a specific part of a model or place in their environment. Use a Wayfinder when you want to call attention or lead a user to a location on a model or place in their environment.

 

Who can participate?

Any Studio user can participate after upgrading to Studio 9.5.0!

 

How can I enable it?

A few manual steps are required to enable the Wayfinder widget. Instructions on enabling this feature can be found in our Help Center.

 

Who to contact with feedback?

We want to hear from you! All feedback, questions, and comments about the Wayfinder widget are welcome and can be submitted in the comments below, which will be monitored by Vuforia Studio Product Management.

8 replies

18-Opal
August 17, 2022

Hi--

 

Thanks for adding this, it will be very useful! I have noticed one thing in my testing with the feature: the "arrived" event seems to trigger as expected, but the "departed" event doesn't seem to trigger. I am trying to display a 3DImage when the user approaches the waypoint, and hide it again when they leave. I can get it to appear, but it doesn't disappear, and writing messages to the console log shows that the event doesn't fire, or at least it doesn't call the function I've given for it.

 

--Clay

13-Aquamarine
August 22, 2022

Thank you for your feedback, Clay! We will test this and see if we have the same results you do. 

13-Aquamarine
August 23, 2022

Hi Clay! I tried this out and was able to get it to work. Please see the attached video. I hope this helps!

 

 

14-Alexandrite
September 5, 2022

Great addition, I've been looking for this for quite a long time.

Will this be added to Hololens experiences after the Beta will end?

13-Aquamarine
September 6, 2022

Hi Andrea, Yes! We are working on a HoloLens version as well. When we are ready, we will send out communications. 

14-Alexandrite
October 13, 2022

I've tested today the Hololens version, great job!!

3-Newcomer
September 7, 2022

Testing on an iPhone 11 Pro and finding the ribbon dots a bit small. The waypoint location is marked by a white, unfilled circle that does not really stand out; it would be nice if the ribbon's destination was more obvious. I tried changing the .svg of the the circle to orange with a wider stroke, but the program seems to overwrite the file every time I replace it.

13-Aquamarine
September 15, 2022

Hi FionaC,

 

Thank you for your feedback! Would you be willing to send us a screenshot of what you are seeing? It would be helpful to understand the type of environment you are trying to use the Wayfinder in so we can understand the different types of situations our users are experiencing. 

3-Newcomer
September 7, 2022

I selected "Show Labels" and "Always on top", and the labels are visible in the Preview but not in the View app on my iPhone.

13-Aquamarine
September 15, 2022

Thank you for the feedback, FionaC! We have made improvements to the visibility properties for the next release, 9.7.0. I would like to ask you to please try again once that release is available at the end of the month!

11-Garnet
September 14, 2022

Hello,

Thanks for sharing the Beta, we are really looking forward having this widget.

Something I noticed, that property “visible” is not available yet. Instead “enabled” seems to do the job. Till now it is buggy since you first have to set it true, then to false until the wayfinder is invisible.

For anybody who wants to have it invisible by default, this might work:

$rootScope.$on('modelLoaded', function () {

 setTimeout(function(){

    $scope.view.wdg['wayfinder-1'].enabled=true;

}, 2000);

   setTimeout(function(){

    $scope.view.wdg['wayfinder-1'].enabled=false;

}, 5000);

});

13-Aquamarine
September 15, 2022

Hi JG, Glad to hear that you all are looking forward to the widget! Yes, we will not have a "visible" property for Wayfinder, the normal "visible" functionality for hiding and showing the widget is included in the "Enabled" property. The "Enabled" property also ensures that the Wayfinder does not navigate through any of the waypoints while it is hidden. 

 

If I understand correctly, you are trying to have the Wayfinder hidden by default when you first load the experience? I just tried it with one of the later builds and it seems to be working now. If this is what you mean, please try this again when 9.7.0 is out in a couple weeks! 

14-Alexandrite
September 27, 2022

Hello again everyone, I've started testing this widget.

As a different use case, I'd like to use each waypoint to trigger a different event.

In my case, I have three different labels, and each time I reach a waypoint I'd like to swith to visible a specific one.

Is there a way using the default properties?

Also, if it can be done in JS, what would be the code to call for each waypoint to trigger the label visibility? I know the label's visibility part, but I mean I don't know the wayfinder code part, example: $scope.app.view['Home'].wdg['wayfinder-1'].????['???'] 

Does it make sense?

wayf1.JPGwayf2.JPG

 

Thank you very much

Andrea

21-Topaz I
September 28, 2022

Hi @AndreaT ,

I would suggest to use the Wayfinder widget propeties $scope.app.view['YourViewName'].wdg['YourWayfinderWdg']['selectedWaypointValue'] so example what it could contain e.g. for Waypoint-1:

{"rows":[{"position":{"x":0.0642,"y":0.4871,"z":1.2134},"gaze":{"x":0,"y":0,"z":1},"up":{"x":0,"y":1,"z":0},"eventRadius":"0.8","wayfinderDisplayBoundary":"0.4","label":"waypoint-1"}],"dataShape":{"fieldDefinitions":{"gaze":{"aspects":{},"baseType":"STRING","name":"gaze"},"position":{"aspects":{},"baseType":"STRING","name":"position"},"up":{"aspects":{},"baseType":"STRING","name":"up"},"metadata":{"aspects":{},"baseType":"STRING","name":"metadata"},"label":{"aspects":{},"baseType":"STRING","name":"label"}}}}

 

and 
$scope.app.view['YourViewName'].wdg['YourWayfinderWdg']['poi']  which a number starting by 0 no waypoint was found and counting then the waypoints

You could define also callbacks where you can check the values and then start the desired actions here example

 

2022-09-28_11-08-58.jpg

 

and the sample js code for it:

let DEBUG=false

$scope.testClbkArrived = function(text) {
 console.log("--->$scope.testClbkArrived ()::");
for (var i= 0; i < arguments.length; i++) 
 {if(DEBUG)console.log('Argument ['+i+']='+arguments[i]);}
 
 let WaypointValue=$scope.app.view['Home'].wdg['wayfinder-1']['selectedWaypointValue'].rows[0].label 
 let Waypoi =$scope.app.view['Home'].wdg['wayfinder-1']['poi']
 
 //arrived ... you can add there your code when you arrived - e.g. make something visible e.g. below
 $scope.setWidgetProp("textArea-2","text","Arrived[poi="+Waypoi+"] to "+WaypointValue);
 $timeout($scope.$root.$broadcast('app.view["Home"].wdg["popup-1"].svc.showpopup'),100);
 
 
}

$scope.testClbkDeparted = function(text) {
 console.log("--->$scope.testClbk(.testClbkkDeparted::");
 
 {//departed ... you can add there your code when you departed - e.g. make something invisible
 
 }
}

What I observed was that the arrived event was working fine but the departed event does not fire (at leaset in preview mode). 

Here sample steps

 

2022-09-28_10-36-24.jpg

21-Topaz I
September 28, 2022

Here I want to attach the project where I tested the steps mentioned in the previous post. Because the used model (pvz file) was > 50Mb and could not be uploaded here I used now a small model instead.

13-Aquamarine
October 7, 2022

Hi guys, I'd really like to try the beta widget but the Help Center page to enable it seems to be missing.

13-Aquamarine
October 13, 2022

Hi Roccobarocco,

 

The Help Center page for enabling the Wayfinder widget was removed now that the widget is available in the production release and these steps are no longer needed to use the Wayfinder. You should be able to find it directly under the Widgets bar under "Navigation" sub-section in the Vuforia Studio Editor when you have upgraded to 9.7.1+. 

13-Aquamarine
October 14, 2022

Thankyou @AmberWright, I've realized it after posting, I was misleaded by the delayed release of 9.7.1.+
Now I've properly updated Studio and happily playing with the new Widget

14-Alexandrite
November 2, 2022

@azupfer  can we keep using this thread to discuss about the wayfinder or is it better to start other threads?

 

In the meantime I have a question, mainly related to the fact that we can add only 1 wayfinder to the active canvas.

The use case is this:

experience where the user can jump between waypoints.
Think of a tutorial-like experience.
Waypoint1 action1, waypoint2 action2,.... But not all points are connected subsequently. I might want to guide the user to somewhere else after a choice/condition and therefore I want to jump to that POI.
What I have thought:
-General toggle to enable the wayfinder (normally not enabled)
-Then another toggle: toggle on-> wayfinder enabled and selectedwaypointvalue=2
After that the widget must start again from the beginning and be disabled again.
But then how can I do to hide again the wayfinder and reset It? It doesn't seem to work if I set again the 'selectedwaypoint' to 0 and force the 'enabled' to false (along with forcing off the toggles).
I played also with the arrived event and such, but I couldn't get It to work the way I'd like.

Case2: for a different use, I want to skip a waypoint if a condition Is satisfied. How to do so? Like for example if the waypoint label Is equal to 'SkipMe' i want to skip that point and go to the next one.

Picture below for this second case..

AndreaT_0-1667379155148.png

Basically we're aiming to use wayfinders in a dynamic way because our machines require different approaches and there isn't always a predefined ordered sequence, therefore my will to understand how to play around with the start/end of the sequence and jumping between waypoints.

 

Thanks in advance

14-Alexandrite
November 2, 2022

Double post because after some testing, I report a bug, if it's even a bug.

When we force enable=off of the wayfinder, if we then change a waypoint, like for example I force waypoint-3 while the normal navigation is still at waypoint-1 and "hiden", the wayfinder will appear and to hide it again it must be toggled enabled and then disabled again.

wayf.gif

21-Topaz I
November 3, 2022

@AndreaT thanks! not sure if this is not a problem of project implementation / code. so lets try - trial and error - the next version, needs a check if ok. feedback will be appreciated. Thanks!