Unity provides a set of default options that are generally the average case for all platforms. However, Unity offers some HoloLens specific behaviors that can be toggled through project settings.
To toggle holographic splash screens settings, go to Edit > Project Settings... > Player page, click on the Windows Store tab and find the Splash Image > Show Unity Splash Screen setting and the Windows Holographic > Holographic Splash Image.
|Show Unity Splash Screen||Holographic Splash Image||Behavior|
|On||None||Show default Unity splash screen for 5 seconds or until the app is loaded, whichever is longer.|
|On||Custom||Show Custom splash screen for 5 seconds or until the app is loaded, whichever is longer.|
|Off||None||Show transparent black (nothing) until app is loaded.|
|Off||Custom||Show Custom splash screen for 5 seconds or until the app is loaded, whichever is longer.|
HoloLens depends seeing the environment around it to construct a coordinate system, which allows holograms to remain in position. When the HoloLens is unable to locate itself in the world, we call this lost tracking. In these cases, functionality dependent on coordinate systems like spatial mapping do not work.
If a loss of tracking occurs, Unity's default behavior is to stop rendering holograms, pause the game loop), and display a tracking lost notification that comfortably follows the users gaze. Custom notifications can also be provided in the form of a tracking loss image. For apps that depend upon tracking for their whole experience, it's sufficient to let Unity handle this entirely until tracking is regained.
Customize tracking loss image. Developers can supply a custom image to be shown during tracking loss. To customize the tracking lost image, go to Edit > Project Settings... > Player page, click on the Windows Store tab and find the Windows Holographic > Tracking Loss Image.
Opt-out of automatic pause. Some apps may not require tracking or may need to continue processing uninterrupted while tracking is lost. In these cases, apps can opt out of the default loss of tracking behavior. Developers who choose this are responsible for hiding/disabling any objects which would not render properly in a tracking-loss scenario. In most cases, the only content that is recommended to be rendered is body locked content.
To opt out of automatic pause behavior, go to Edit > Project Settings... > Player page, click on the Windows Store tab and find the Windows Holographic > On Tracking Loss Pause and Show Image checkbox.
Tracking loss events. To define custom behavior when tracking is lost, handle the global tracking loss events.
For an app to take advantage of certain functionality on HoloLens, it must declare certain capabilities in its manifest. The manifest declarations can be made in Unity so they are included in every subsequent project export. The setting are found in Player Settings > Windows Store > Publishing Settings > Capabilities. The applicable capabilities for enabling the commonly used APIs for Holographic apps are:
|Capability||API's requiring capability|
|WebCam||PhotoCapture and VideoCapture|
|SpatialPerception||SurfaceObserver and SpatialAnchor|
|Microphone||DictationRecognizer, GrammarRecognizer, and KeywordRecognizer|
|picturesLibrary / videosLibrary / musicLibrary||PhotoCapture and VideoCapture (for still photos, video, and audio respectively)|