# Working with the HoloLens Emulator
[TOC]
### Required software
There's two possible ways to interact with the HoloLens emulator, one is the **[HoloLens Emulator](https://docs.microsoft.com/en-us/windows/mixed-reality/using-the-hololens-emulator)**, which is a full solution for building, testing, and debugging code, and there's also the **[MRTK Emulator](https://docs.microsoft.com/en-us/windows/mixed-reality/using-the-windows-mixed-reality-simulator)**, which is more limited. This text goes about the first type.
I looked into the a very good tutorial from the microsoft original documentation which helped me get the emulator running, which is found [here](https://docs.microsoft.com/en-us/windows/mixed-reality/install-the-tools). You can look there for a more thorough description, but this guide should be self-contained.
The following are required software that must be installed for the emulator to work (note that the computer needs to be restarted after each install).
- [ ] Windows 10 Pro, or Education (home doesn't work). Must also have the latests windows updates installed.
- [ ] Visual Studio 2017 or newer (microsoft recommends 2019 16.2 and above, but I managed to run it on VS 2017).
- [ ] Windows 10 SDK, [10.0.18362.0](https://developer.microsoft.com//windows/downloads/windows-10-sdk)
- [ ] [HoloLens 1 Emulator](https://go.microsoft.com/fwlink/?linkid=2065980) - Keep track where this file is, but don't install just yet. Make sure your computer is set up appropriately before.
- [ ] Unity 2018.4.x - This is Microsoft's recommendation, as it includes Long Term Support required for the MRKT simulator, but is not necessary. Might run on Unity 2017 (I wasn't able to). I used Unity 2018.4.20.
Emulator Requirements:
- In addition to all the previous requirements for the software, the emulator also needs **Hyper-V** to function properly. This is activated as follows:
make sure your PC meets the following criteria:
- [ ]64-bit Windows 10 Pro, Enterprise, or Education
- [ ]64-bit CPU
- [ ]CPU with 4 cores (or multiple CPUs with a total of 4 cores)
- [ ]8 GB of RAM or more
In the BIOS, the following features must be supported and enabled:
- Hardware-assisted virtualization
- Second Level Address Translation (SLAT)
- Hardware-based Data Execution Prevention (DEP)
GPU requirements
- DirectX 11.0 or later
- WDDM 1.2 graphics driver or later (1st gen)
If your system meets the requirements listed above, ensure that the "Hyper-V" feature has been enabled on your system through Control Panel -> Programs -> Programs and Features -> Turn Windows Features on or off -> ensure that "Hyper-V" is selected for the Emulator installation to be successful.
If all the above were done properly, then follow to the installation step.
### Installation
Installation is quite straightforward, just click on the file downloaded earlier and let it run. Could take some time, but will be successful if no errors are shown. You might need to close current tabs with VisualStudio running.
The estimated size should be around 2.3GB, make sure your PC has enough space. If successful, the emulator should now show under "Build" tab as an option, next to Local Machine, and Remote Machine.

- Note: you might need to restart Visual Studio to make the simulation run.
### Building and testing directly into emulator
If you are able to build the project in the HoloLens, it should be able to build into the Emulator (provided that you installed the required software listed above). However, just to be absolutely redundant, the following Unity tools are required to build:
- [ ] Mixed Reality Toolkit
- [ ] Unity UWP Build Tools
- [ ] .NET Scripting Backend
- [ ] IL2CPP Scripting Backend
### Changing emulated features (room)
### Additional Resources
- This guy's blog is also really good to get started with the emulator, and even has some examples about how to develop different simple apps: https://hololens.reality.news/how-to/hololens-dev-101-install-set-up-hololens-emulator-0174845/
- Same guy, but about required software: https://hololens.reality.news/how-to/hololens-dev-101-install-set-up-software-start-developing-for-windows-holographic-0174683/