How To Integrate ISAR SDK for HoloLens 2 Client

How To Integrate ISAR SDK for HoloLens 2 Client

This guide will walk you through how to integrate the ISAR SDK into a Unity project. Once the project is fully configured, it can be deployed as server for the ISAR Client application for HoloLens 2.

This guide is valid for both the Trial and the Full (with an active license) version. Differences in the implementation are indicated in the respective steps.

 

 

Prerequisites

  • Minimum Unity 2019.4.x (tested with 2019.4.18f1)
  • Mixed Reality Toolkit 2.4.x or 2.5.x (tested with MRTK 2.5.4)
  • Access to Holo-Light's GitHub page
    • If you are interested in the ISAR SDK (Trial or Full version), please contact our Sales department at sales@holo-light.com

First Installation

Importing MRTK and ISAR SDK Package

  1. Create a new Unity 3D project (skip this if you already have a project)

  2. Import MRTK into your project

  3. Import ISAR SDK into your project

    • Make sure you are connected to the internet
    • Open Package Manager in the Unity editor (Window -> Package Manager)
    • Check if the package named Version Control is installed and uninstall it by clicking Remove (if it's not there in the first place you're all good)
    • Choose Add package from disk... and select the file package.json from the com.hololight.isar directory (located in \ISAR-SDK-Trial-main\Packages\com.hololight.isar or \ISAR_Full_Version-main\Packages\com.hololight.isar)

Updating Previous Installation

This step only applies if you have a previous version of ISAR already installed/integrated in your project. If this is your first time installing ISAR, please skip to the next step.

  1. Open Package Manager in the Unity editor (Window -> Package Manager)
  2. Remove the current ISAR Package
  3. Add the new ISAR Package
  4. Restart Unity
  5. Follow the steps in section Project Configuration of this guide

Project Configuration

  1. Navigate to Edit -> Project Settings -> XR Plug-in Management
    • Enable ISAR XR for both platforms
  2. Open File -> Build Settings
    • Ensure one of the following configurations is selected
      • Platform: PC, Mac & Linux Standalone + Architecture: x86_64
  3. Restart Unity (to work around known issues)

Scene Configuration

One-Click Scene Config

  • Choose ISAR -> Configure MRTK to configure your scene to work with ISAR. It will add the necessary objects to your scene and configure them properly

Manual Config

To configure your scene manually (e.g. to integrate with existing MRTK configurations) follow the steps below.

  • Ensure your scene is configured to use MRTK by selecting Mixed Reality Toolkit -> Add to Scene and Configure... in the top menu bar of Unity
  • Change the configuration profile to IsarXRSDKConfigurationProfile

Checklist

If...

  •  ...MixedRealityToolkit -> Input -> Input Data Providers contains ISAR XRSDK Device Manager, ...
  •  ...MixedRealityToolkit -> Camera -> Camera Settings Providers contains XR SDK Camera Settings ...
  •  ...and you followed the steps in Project Configuration correctly...
  •  ...then you have set up everything correctly!

First Run

Enter play mode in the Unity editor or build a standalone application with the following settings:

  • Platform: PC, Mac & Linux Standalone
  • Target Platform: Windows
  • Architecture: x86_64

The ISAR server application will start listening on the TCP port 9999 of your computer. The ISAR client application can then use that port to establish the streaming session. Please ensure that no firewall is blocking the connection.

 

ISAR Configuration File

The configuration file for ISAR is located within the ISAR package in Runtime/Resources. When running the server another copy of the file is generated in the Assets/StreamingAssets directory of your project. Do not change the config in StreamingAssets because it will be overwritten at the next run.

  • The settings width and height determine the resolution of the rendered image per view/eye
    • Careful: the resolution needs to be supported by the H264 hardware decoder of the client device
  • numViews determines the number of views/eyes rendered on the client device
    • Valid values are 1 for mono rendering, e.g. on Tablets, and 2 for stereo rendering, e.g. on HoloLenses
    • Related Articles

    • How To Integrate ISAR SDK for Oculus Quest 2 Client

      This guide will walk you through how to integrate the ISAR SDK for Oculus Quest 2 into a Unity project. Once the project is fully configured, it can be deployed as server for the ISAR Client application for HoloLens 2. This guide is valid for both ...
    • How To Integrate ISAR SDK for Android Client

      This guide will walk you through how to integrate the ISAR SDK for Android into a Unity project. Once the project is fully configured, it can be deployed as server for the ISAR Client application for Android devices. This guide is valid for both ...
    • How To Install and Run ISAR Client Application for HoloLens 2

      To benefit from ISAR's remote rendering technology, it is necessary to employ a server running the ISAR SDK (e.g. a Unity project with integrated ISAR SDK) as well as an ISAR Client application. If you want to stream your projects on Microsoft's ...
    • ISAR HoloLens 2 Client 2.1.0.0 Release Notes

      Below you will find all the latest changes being introduced with ISAR Client 2.1.0.0 for HoloLens 2. It was published in March 2021 and is available on Microsoft Store. This release is focused on feedback we’ve received from users via ...
    • Troubleshooting for ISAR SDK and Client Applications

      No software is immune to bugs - not even ISAR, admittedly. We have compiled below a collection of possible solutions stemming from real use cases that will may help you to solve problems independently (without much frustration). If your issue is not ...