How to run your Unity3D app at Windows Phone 8 Emulator in VMWare


Here is a quick “how to set up” notes to myself and other curious people who have no Windows Phone device on the desk:

1. PC should be compatible with HYPER-V.
Hardware requirements: 64-bit processor with Intel VT or AMD-V support. DEP, Intel XD bit (execute disable bit) or AMD NX bit (no execute bit) should be enabled.
Software requirements: Pro+ editions Win 7 / Win 8 / Win 8.1 – both guest (client) and host.
Read more: Hyper-V Overview

2. Set up guest OS.
Install Windows Phone 8 SDK with Visual Studio Express 2012 for Windows Phone (grab here).
Install VS 2012 Update 3 or later (grab here).
If your VS 2012 Express trial expired – just press “Register online” next to the key enter form, fill in all fields and grab your license key from inbox. It’s free, e-mail example:

VS 2012 Express Key

3. Configure VMWare.
Make sure you enabled option “Virtualize Intel VT-x/EPT or ARM-V/RVI” on the “Processors” device. This is required to be able to run HYPER-V on your virtual machine.


4. Edit VMWare Virtual Machine .VMX file.
Locate it where you saved your VM and open using your favorite text editor (I prefer open source Notepad2-mod).
Add there following line:
hypervisor.cpuid.v0 = “FALSE” (copy-paste carefully please since you may get wrong quotes chars)


5. Build your app using Unity 4.3.3 or later.
4.2.x and earlier output doesn’t support emulator, make sure you’re using Unity 4.3.3 or later, it’s important.

6. Run in VS Express 2012 Phone.
Open solution generated by Unity.
Choose any available emulator and make sure your platform switched to x86 / x64 from ARM:


Run using selected emulator.

Final result example (click for full-size):


Thanks to Andriy Pidvirnyy for his WP8 feedback on my Anti-Cheat Toolkit plugin and initial help with emulator set up.

Found a typo? Please, highlight it and press Shift + Enter or click here to inform me!

Share Button

Comments are closed.