Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

IL2CPP for Windows Store Apps in 5.3 beta?

Discussion in '5.3 Beta' started by oscabrg, Oct 2, 2015.

  1. oscabrg

    oscabrg

    Joined:
    Jul 17, 2015
    Posts:
    21
    I see that in Roadmap for 4.3 but not in post "Preview of 4.3".. still coming, right?
     
  2. Alex-Lian

    Alex-Lian

    Guest

    It's not worth a whole doc to explain that the feature is in with a simple ui choice in the settings.
     
  3. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    It's coming. You can count on it :)
     
  4. MrEsquire

    MrEsquire

    Joined:
    Nov 5, 2013
    Posts:
    2,712
    Any benefits of using?
     
  5. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    There are several. Probably the biggest one is that you get the same .NET API surface as all other Unity platforms, rather than the .NET Core 5 which lacks a lot of types that people usually use on other platforms.
     
  6. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    WOW!!! that is extremely awesome news
     
  7. SimonDarksideJ

    SimonDarksideJ

    Joined:
    Jul 3, 2012
    Posts:
    1,689
    Just spotted in the 5.3b2. Added IL2CPP support for Windows universal
     
  8. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Yup! There are separate installer choices for both (.NET and IL2CPP) scripting backends. Check Unity manual for detailed documentation on IL2CPP scripting backend.

    However, there is a bug that we found at the last moment (after the build was out) which causes the installers to overwrite each other and makes all builds fail if IL2CPP installer is installed. There is a workaround:

    Install one scripting backend, go to <EditorInstallationDir>\Editor\Data\PlaybackEngines and copy MetroSupport to a backup location. Then, install the second scripting backend and finally copy back the MetroSupport folder from backup location.
     
    Last edited: Oct 10, 2015
  9. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    I'm doing something wrong,
    install IL2CPP,
    then backup MetroSupport,
    install .net,
    and copy and replace (or copy and skip) IL2CPP MetroSupport over .net MetroSupport
    empty project, default scene, unity running as admin
    build target Universal 10 D3D
     
  10. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    What's not working?
     
  11. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    sorry, Universal 10 IL2CPP build fails

    building again now to get the exception
     
  12. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    Exception: Failed to build Visual Studio project using arguments 'C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe "C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\TESTING.sln" /nologo /maxcpucount /p:Configuration=Release /p:platform=x86 /p:SolutionDir="C:\\Users\\O\\Documents\\!Unity\\5.3.x\\!Builds\\Windows Store\\TESTING\\" /t:Build /clp:Verbosity=minimal'.

    Output: Il2CppAttributes.cpp

    Il2CppOutputProject\IL2CPP\libil2cpp\object-internals.h(56): warning C4200: nonstandard extension used: zero-sized array in struct/union

    Il2CppOutputProject\IL2CPP\libil2cpp\object-internals.h(56): note: Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array

    Il2CppOutputProject\il2cppOutput\GenericMethods0.cpp(3372): warning C4018: '>=': signed/unsigned mismatch

    etc...
     
  13. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Can you post the full log? Looks like you got to building C++ code part. That's good - that's the last piece.

    Also, could you try building to a folder, opening up VS solution and try running from there instead of hitting Build and Run in Unity?
     
  14. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    heres whats in red in visual studio

    using namespace UnityPlayer;
    m_AppCallbacks = ref new AppCallbacks();
    private:
    UnityPlayer::AppCallbacks^ m_AppCallbacks;

    sorry i don't know c++ so this looks very confusing
    i'm guessing fixing the 1st line error: name must be a namespace name will fix things ?
     
  15. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    forgot to mention it built to visual studio with no errors,

    outside of the c++ errors, is
    the compile command,
    and Payload file '...\SymbolMap' does not exist.
     
  16. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Can you try running it from visual studio by pressing F5, and it errors out, can you paste the output log (all of it)?
     
  17. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    i don't know how too,
    theres only 5 errors, the rest warnings 12296
     
  18. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    Severity Code Description Project File Line
    Error MSB3073 The command ""C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\Il2CppOutputProject\\IL2CPP\build\il2cpp.exe" --compile-cpp -architecture=x64 -configuration=Debug -platform=winrt -outputpath="C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\\build\bin\x64\Debug\UnityPlayer.dll" -cachedirectory="C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\\build\obj\il2cppOutputProject\x64\Debug\\" -generatedcppdir="C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\Il2CppOutputProject\\il2cppOutput" -define=WINDOWS_UWP -define=UNITY_UWP -define=UNITY_WSA_10_0 -define=UNITY_WSA -define=UNITY_WINRT --additional-libraries="C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\Players\UAP\x64\Debug\UnityPlayer.lib,d3d11.lib,d3d12.lib,dxguid.lib,mfuuid.lib,msxml6.lib,vccorlib.lib" -verbose" exited with code -532462766. Il2CppOutputProject C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.MakeFile.Targets 37
    Severity Code Description Project File Line
    Error APPX0702 Payload file 'C:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\build\bin\x64\Debug\SymbolMap' does not exist. TESTING C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets 1862
    Severity Code Description Project File Line
    Error (active) name must be a namespace name TESTING c:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\TESTING\App.cpp 6
    Severity Code Description Project File Line
    Error (active) expected a type specifier TESTING c:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\TESTING\App.cpp 14
    Severity Code Description Project File Line
    Error (active) name followed by '::' must be a class or namespace name TESTING c:\Users\O\Documents\!Unity\5.3.x\!Builds\Windows Store\TESTING\TESTING\App.h 19

    just copied each individually
     
  19. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    You can open output window by clicking here:

     
  20. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    appreciate the drawing :)
    attached log
     

    Attached Files:

  21. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Code (csharp):
    1. 1>  il2cpp.exe didn't catch exception: System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include'.
    There's your error... Looks like we accidentally made a dependency on VS2010 being installed. None of us caught it as all of us have it installed. However, since not an essential part of IL2CPP depends on it, we should be able to work around it without you having to install it.

    Could you find "Unity Data.vcxitems" file (it should be within generated project folder), open it up with any text editor (like notepad or sublime), and delete these lines?

    Code (csharp):
    1.   <ItemGroup>
    2.     <None Include="$(OutDir)SymbolMap">
    3.       <DeploymentContent>true</DeploymentContent>
    4.     </None>
    5.   </ItemGroup>
    After you done so, try running from Visual Studio again.
     
  22. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    deleted but vs thing still there
     

    Attached Files:

  23. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Can you right click on your project (I believe it's called "TESTING") in VS Solution Explorer and click deploy? After that, you should be able to run it by pressing F5.

    If that doesn't work, right click on the solution in the solution explorer (should be called "solution 'TESTING' (3 projects)"), press properties, click on configuration properties and finally uncheck "build" checkbox under IL2CPPOutputProject.

    By the way, I'm working on fixing this for next beta.
     
  24. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    thank you for your patience with me,
    still same thing

    unchecked build for IL2CPPOutputProject and its running

    The in-game dev console shows
    unable to find type
    NetworkMessageInfo
    NetworkPlayer
    NetworkViewID
    RPC
    SetupCoroutine
    unable to find method
    InvokeMember in SetupCoroutine
    ExtractStackeTRace in StackTraceUtility
    PostprocessStacktrace in
    ExtractStringFromExceptionInternal in
    SetProjectFolder in

    Thank you :)
    Looking forward to b3
     
    Last edited: Oct 11, 2015
  25. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    I suppose it runs now. Does it work or is it crashing?
     
    plottsjp likes this.
  26. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    its a working empty scene,
    just trying it out on my project now
     
  27. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
  28. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    its really awesome to see it running supa fast in c++! Thanks again for getting this running
     
    Last edited: Oct 11, 2015
  29. SimonDarksideJ

    SimonDarksideJ

    Joined:
    Jul 3, 2012
    Posts:
    1,689
    Will wait for the next beta drop to test this properly then, too many workarounds even for a beta :S
    Keep up the great work team (oh and UNINSTALL VS2010/2012 :p so last decade, lol.)
     
  30. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    yea its the build time that takes longer then doing the workaround

    1. Build only from unity, next steps are all in vs
    2. edit windows store build file Unity Data.vcxitems, removing those lines of code
    3. open up solution, wait for that to do what ever it does
    4. change platform to your target
    5. build solution
    6. right click on solution, click properties and click configuration manager, uncheck build for IL2CPPOutputProject
    7. hit play
     
  31. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    tried some assets off the store,

    getting a break in Object.cpp GetVirtualMethod
    if ((method->flags & METHOD_ATTRIBUTE_FINAL) || !(method->flags & METHOD_ATTRIBUTE_VIRTUAL))
     
  32. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Do you have a callstack for it? There should be a tab in Visual Studio (similar to output one) when it breaks.
     
  33. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    [external code]
    UnityPlayer.dll!il2cpp_object_get_virtual_method(Il2CppObject * obj, const MethodInfo * method) Line 802
    break --> UnityPlayer.dll!il2cpp::vm::Object::GetVirtualMethod(Il2CppObject * obj, const MethodInfo * method) Line 185
     
  34. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Right click on [external code] and check "Show external code" checkbox. Finally, press CTRL + A to select all frames after having one selected, copy them and post them here.
     
  35. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    Code (CSharp):
    1. >    UnityPlayer.dll!il2cpp::vm::Object::GetVirtualMethod(Il2CppObject * obj, const MethodInfo * method) Line 185    C++
    2.      UnityPlayer.dll!il2cpp_object_get_virtual_method(Il2CppObject * obj, const MethodInfo * method) Line 802    C++
    3.      UnityPlayer.dll!scripting_object_get_virtual_method(struct ScriptingObject *,struct ScriptingMethodIl2Cpp)    Unknown
    4.      UnityPlayer.dll!Transfer_UnityEngineObject<class ProxyTransfer,1>(struct SerializationCommandArguments const &,struct RuntimeSerializationCommandInfo &)    Unknown
    5.      UnityPlayer.dll!Transfer_UnityEngineObject<class ProxyTransfer,1>(struct SerializationCommandArguments const &,struct RuntimeSerializationCommandInfo &)    Unknown
    6.      UnityPlayer.dll!BuildSerializationCommandQueueFor<class StreamedBinaryRead<0> >(struct BuildSerializationCommandQueueArgs const &,class SerializationCommandQueueBuilder &,class AllowNameConversions * &,bool)    Unknown
    7.      UnityPlayer.dll!EmitSerializationCommandsForManagedObjectField<class StreamedBinaryRead<0> >(struct TransferField_Info const &,class SerializationCommandQueueBuilder &,class AllowNameConversions * &)    Unknown
    8.      UnityPlayer.dll!EmitSerializationCommandsForField<class StreamedBinaryRead<0> >(struct TransferField_Info &,class SerializationCommandQueueBuilder &,class AllowNameConversions * &)    Unknown
    9.      UnityPlayer.dll!BuildSerializationCommandQueueFor<class StreamedBinaryRead<0> >(struct BuildSerializationCommandQueueArgs const &,class SerializationCommandQueueBuilder &,class AllowNameConversions * &,bool)    Unknown
    10.      UnityPlayer.dll!BuildSerializationCommandQueueFor<class StreamedBinaryRead<0> >(struct BuildSerializationCommandQueueArgs const &,class SerializationCommandQueueBuilder &,class AllowNameConversions * &,bool)    Unknown
    11.      UnityPlayer.dll!Transfer_UnityEngineObject<class ProxyTransfer,1>(struct SerializationCommandArguments const &,struct RuntimeSerializationCommandInfo &)    Unknown
    12.      UnityPlayer.dll!Transfer_UnityEngineObject<class ProxyTransfer,1>(struct SerializationCommandArguments const &,struct RuntimeSerializationCommandInfo &)    Unknown
    13.      UnityPlayer.dll!BuildSerializationCacheFor(struct ScriptingClass *,bool &)    Unknown
    14.      UnityPlayer.dll!FindCommandsInCache(struct MonoScriptCache const *,struct TransferRequestSignature const &,bool &)    Unknown
    15.      UnityPlayer.dll!TransferScriptingObject<class StreamedBinaryRead<0> >(class StreamedBinaryRead<0> &,struct ScriptingObject *,struct ScriptingClass *,struct MonoScriptCache const *)    Unknown
    16.      UnityPlayer.dll!MonoBehaviour::TransferEngineAndInstance<class StreamedBinaryRead<0> >(class StreamedBinaryRead<0> &)    Unknown
    17.      UnityPlayer.dll!MonoBehaviour::VirtualRedirectTransfer(class StreamedBinaryRead<0> &)    Unknown
    18.      UnityPlayer.dll!SerializedFile::ReadObject(__int64,enum ObjectCreationMode,bool,class TypeTree const * *,bool *,class Object &)    Unknown
    19.      UnityPlayer.dll!PersistentManager::LoadFileCompletelyThreaded(class std::basic_string<char,struct std::char_traits<char>,class stl_allocator<char,65,16> > const &,__int64 *,int *,int,bool,class LoadProgress &)    Unknown
    20.      UnityPlayer.dll!LoadSceneOperation::Perform(void)    Unknown
    21.      UnityPlayer.dll!PreloadManager::ProcessSingleOperation(void)    Unknown
    22.      UnityPlayer.dll!PreloadManager::Run(void)    Unknown
    23.      UnityPlayer.dll!PreloadManager::Run(void *)    Unknown
    24.      UnityPlayer.dll!Thread::RunThreadWrapper(void *)    Unknown
    25.      UnityPlayer.dll!std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class Platform::String ^> > >::operator<(class std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class Platform::String ^> > > const &)    Unknown
    26.      UnityPlayer.dll!Platform::Details::__abi_FunctorCapture<class <lambda_2852166a1bcbafb0670719dff45fb12f>,void,struct Windows::Foundation::IAsyncAction ^>::Invoke(struct Windows::Foundation::IAsyncAction ^)    Unknown
    27.      UnityPlayer.dll!Windows::System::Threading::WorkItemHandler::Invoke(struct Windows::Foundation::IAsyncAction ^)    Unknown
    28.      UnityPlayer.dll!Windows::System::Threading::WorkItemHandler::[Windows::System::Threading::WorkItemHandler::__abi_IDelegate]::__abi_Windows_System_Threading_WorkItemHandler___abi_IDelegate____abi_Invoke(struct Windows::Foundation::IAsyncAction ^)    Unknown
    29.      threadpoolwinrt.dll!00007ffe612a377d()    Unknown
    30.      threadpoolwinrt.dll!00007ffe612aa737()    Unknown
    31.      kernel32.dll!00007ffe721d2d92()    Unknown
    32.      ntdll.dll!00007ffe74149f64()    Unknown
    33.  
     
    Last edited: Oct 11, 2015
  36. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    how do i paste here without the smilies
     
  37. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    AVOlight likes this.
  38. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    thanks for the tip on insert code,
    what does repro project mean?
    so report bug in unity from project that caused this bug ? leave project attached (ICode from asset store)
    crash bug, always, il2cpp windows universal 10, reflection bug?
     
  39. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Repro is short for "reproduction", that means a project with which this crash happens.

    But yea. press Help -> Report a Bug in the editor, describe it, you can copy paste the stacktrace and attach a project which crashes like this.
     
  40. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    i live in rural new zealand, so my upload speed is pretty slow, will who ever processes the bug report have access to asset store assets to reproduce the project,

    --edit , i'll just delete the Library folder
     
    Last edited: Oct 11, 2015
  41. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
    Case 735266
     
  42. illuminat

    illuminat

    Joined:
    Jul 2, 2014
    Posts:
    40
    @Tautvydas Zilys

    Does that mean that if your game runs on iOS with il2cpp backend it should run on wsa10 universal .net native too?
    that would be such great news and we would postpone the release of our game for windows 10 universal until il2cpp in 5.3 because it's almost impossible to get it to work for us on 5.2 because of some libraries.
     
  43. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    As long as it's not using iOS specific functionality (such as GameCenter, etc), yes.

    Do note though, IL2CPP will have some limitation too compared to .NET scripting backend: you won't be able to use plugins that target .NET 4.5+ (while you can do it with .NET).
     
  44. illuminat

    illuminat

    Joined:
    Jul 2, 2014
    Posts:
    40
    thats really really great news! the first time I won't complain about il2cpp;)

    what are you going to do about preprocessor directives? if you have il2cpp as backend is then still #UNITY_WSA, _RT etc. set?
     
  45. z000z

    z000z

    Joined:
    Dec 31, 2014
    Posts:
    96
    Can you not have native plugins while using IL2CPP with windows 10 universal? Or should that still work?
     
  46. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    UNITY_WSA, UNITY_WINRT will be still present. For .NET Scripting backend, you'll have ENABLE_DOTNET preprocessor, while IL2CPP builds will use ENABLE_IL2CPP.

    Native plugins should work just fine, as long as you're using P/Invoke to use them.
     
  47. elias_t

    elias_t

    Joined:
    Sep 17, 2010
    Posts:
    1,367
    I tried to make a build today for WSA SDK10 + IL2CPP with some native c++ plugins that I develop.

    While the NetCore builds work fine, when trying to build with IL2CPP the plugins do not get included and I get of course linker errors.
     
  48. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Could you report a bug on that? I suppose your plugin is in a .lib\.dll format?

    By the way, the fix for dependency on VS2010 being installed on the machine did not make it to beta3 (it's in for beta4). I've got a better workaround than the last time though - extract this zip to <UnityInstallationDir>\Editor\Data\il2cpp\build and you should be good to go:

    https://oc.unity3d.com/index.php/s/PZkdYbYUtmIN5iy
     
    Last edited: Oct 18, 2015
    AVOlight likes this.
  49. AVOlight

    AVOlight

    Joined:
    Apr 15, 2014
    Posts:
    427
  50. plottsjp

    plottsjp

    Joined:
    Apr 2, 2015
    Posts:
    13
    Tautvydas Zilys,
    Thank you for all your help! Following your suggestions I was able to get an empty project running as a universal windows app (running in a windows phone emulator since i am building on windows 8.1). However when I build my team's actual app, the code fails an assert during startup in Parameter.cpp line 28:
    Code (csharp):
    1.  
    2.     TypeInfo* parameterType = Class::FromIl2CppType(parameter->parameter_type);
    3.     if (parameterType->valuetype)
    4.     {
    5.         assert(parameterType->initialized);
    6.         void* value = alloca(parameterType->instance_size - sizeof(Il2CppObject));
    7.         utils::BlobReader::GetConstantValueFromBlob(typeOfDefaultValue->type, data, value);
    8.         return Object::Box(parameterType, value);
    9.     }
    10.  
    Do you know why? Is this an issue with my code or an issue in the beta? I've attached the stack trace and the values from the "Autos" window.

    Thank you for your help.


    More Details about my build:
    running windows 8.1
    Unity 5.3b3 with windows store il2cpp plugin (no .net core plugin).
    with the vs2010 fix installed
    building for windows store with these options:
    sdk: universal 10
    uwp build type: D3D
    with Unity C# projects selected.

    When in visual studio 2015 community i switched the platform from ARM to x86 and chose a mobile emulator to run on (720p 5inch 1gb). Then pressed play. After it built and deployed i got exception before my app loaded.
     

    Attached Files: