Spots

For the user to be able to jump between several pre-defined spots and/or scales, create a "Spots" root element and add child objects representing the spots. For instance, if you have a model of a house and you want to create two spots — one outside and another inside — you should create two objects: "spot: Outside" and "spot: Inside".

Some of the 3D editors do not preserve the order of hierarchy elements when exported to FBX. To preserve the order, use numbering, e.g. "spot #10: The First Spot". We call this numbers IDs, which must be unique within the "Spots" element.

The X and Z coordinates of the spot represent the user's head position in relation to the model. The vertical position of a spot sets the vertical position of the model in relation to the floor, not the user's head. Therefore, if you want the user to stand on the floor, then put the spot on the floor. If you raise the spot above the floor, then the user will appear above the floor.

Set the rotation of the spot to control the direction in which the user is looking right after getting into the spot.

By default, the model will be shown per its actual scale. Change the scale of the "spot:" object to change it.

If an FBX file doesn't have a "Spots" root element, then this will be treated as having the following elements in place:

  • "Spots"
    • "spot (bird's eye): Initial Spot" (see about "bird's eye" alias below)

There is no limit on the number of spots.

Voice Commands

Based on the names of views and spots, Vyzn automatically creates voice commands. While in the app, you can just say the name of a view or a spot to switch it, or you can iterate through views and spots by saying "Next spot", "Previous spot", "Next view", "Previous view" commands. If there are several views or spots with the same name, then you will be switched to the one with the lesser ID after saying the name. "Next" and "Previous" voice commands will iterate through all available spots and views.

If there are a views or spots with the same name, Vyzn asks: "Do you mean the spot or the view?" when hearing the name.

First Spot

After scanning a session's QR code for the first time, the first spot is shown, glowing red and following the user's gaze. The user has to air tap to position it in the space. By default, the model follows the floor and ignores other surfaces like tables and walls. This behavior suits big objects. For instance, when showing the whole interior of a room in a real world scale is required, although it doesnt work well for small and/or scaled-down objects. Sometimes you want to position a model on a table or on a wall. To allow for this, use the "follow surfaces" attribute. To add an attribute, add its name enclosed into parentheses, e.g.: "spot (follow surfaces): Bird's Eye".

Spot coordinates defined in the presentation are ignored for the first object.

Bird's Eye

When placing a scaled-down version of your model on a table, we call it "Bird's Eye". We recommend setting the attributes per the table below for such a spot. You can use "Bird's eye" shortcut instead of setting individual attributes.

From the UX perspective, in most cases, the optimal size of the model in Bird's Eye after scaling is 0.7 x 0.9 meters.

Spot Attributes

Name Default Bird's Eye When True
follow-surfaces false true The model follows not just the floor but other surfaces as well while moving the model.
jump-commands true false Enables air tap to skip and "Skip forward"/"Skip back" voice commands.
movable true true Enables the user to move the scene.
movable-and-floating-objects true false Enables movable and floating objects.
keep-position true true Instead of using the coordinates of the spot defined in the presentation, previous position is used.
sky true false Makes sky visible.
rotation false true Enables air tap and hold gesture to rotate the scene.

Defining Views Available within a Spot

Sometimes you need different sets of views to be available in different spots. For instance, if you want to show a model of a house with trees, grass, etc. in real-scale, and just the house in the bird's eye, then you can use the structure below.

  • Views
    • view #10 (day): Day View no environment
    • view #20 (night): Night View no environment
    • view #30 (day): Day View w/environment
    • view #40 (night): Night View w/environment
  • Spots
    • spot #10 (bird's eye, views: 10, 20): Bird's Eye don't forget to set the scale
    • spot #20 (view: 30, 40): Outside
    • spot #30 (view: 30, 40): Inside

When the user switches to "Night View" (#20) view being in "Bird's Eye" spot, then switches to the next spot, "Night View" (#40) will be picked automatically because of the same name.

Questions and Answers

Q: We placed our “Spots” about four feet off the ground, and when looking through the HoloLens it appeared our eyelevel was six feet above where the “Spots” were placed. If we want to look exactly 6 feet off the ground, the should the “Spot” be placed on the ground?

The vertical position of a spot sets a 3D point that is aligned with the physical floor of the space where you are running the experience. Therefore, if you raise a spot, then you lower the model relative to the physical floor in your room. You can't specify the spot to be exactly 6 feet off the ground, because people have different height and that wouldn't work in a shared experience. Hence, you can only set the height of the "floor".