Blank screen on Windows Store Apps player

I’m using Unity 5.0.1p3 and have a simple project with some Unity GUI showing some data pulled from the GameSparks backend service.

All works fine in the editor, even in WebGL and other platforms, but as soon as I build for Windows Store Apps 8.0, the resulting output is a blank/black screen.

Any ideas on what could cause this?

I’ve logged a case # for this 695710

We’ll look into this. In the meantime, what’s your exact VS version?

Thanks, image of about window attached.

I got a similar behavior.

  • A simple test that show gamepad button on a Unity GUI
  • nothing show (not even the Unity splash screen) just a black screen.
  • i’m using it fine in the editor, as x86 stand alone application, and Android (tablet & tv)

I’m using :

  • Unity 5.0.2f1 (export to SDK 8.1)
  • Visual C# 2013 06155-004-0433004-02807
  • .NET Framework 4.5.51650

It is the first time that I’m trying to do an application for Windows Store so I’m not 100% sure of the process.

What about empty project, does it work ?

If it is set, try setting your camera’s Clear Flags option from ‘Don’t clear’, to ‘Solid color’.

This has caused strange issues for me in the past when it was set to ‘Don’t Clear’

I create a new Unity Project :

  • Save Empty scene
  • Go to Build settings…
  • Select Windows Store then sdk 8.1
  • Build to a new folder

Launch Visual Studio :

  • Open the project created with Unity
  • Change to “Master” and “x86”
  • Launch with “Local machine”

I got a got a black screen (no Unity Splash screen, no skybox).
Click on the Close Button, Visual Studio show up but the project is still running.
Click on stop.

‘Template.exe’ (CLR v4.0.30319: DefaultDomain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: DefaultDomain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\Template.exe’. Symbols loaded.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\system32\WinMetadata\Windows.UI.Xaml.winmd’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.InteropServices.WindowsRuntime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.InteropServices.WindowsRuntime.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\system32\WinMetadata\Windows.ApplicationModel.winmd’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\UnityPlayer.winmd’. Module was built without symbols.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\system32\WinMetadata\Windows.UI.winmd’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.WindowsRuntime\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.WindowsRuntime.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\WinRTBridge.winmd’. Cannot find or open the PDB file.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\BridgeInterface.winmd’. Module was built without symbols.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Collections\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Collections.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Threading.Tasks\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Threading.Tasks.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\system32\WinMetadata\Windows.Storage.winmd’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\system32\WinMetadata\Windows.Foundation.winmd’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Extensions\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.Extensions.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\UnityEngine.DLL’. Symbols loaded.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\UnityEngine.UI.DLL’. Symbols loaded.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.IO\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.IO.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Reflection.Primitives\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Reflection.Primitives.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Reflection\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Reflection.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Text.Encoding\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Text.Encoding.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.InteropServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.InteropServices.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Threading\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Threading.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘D:\Unity\Test\Windows8\Test\bin\x86\Master\AppX\UnityEngineProxy.DLL’. Cannot find or open the PDB file.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Linq\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Linq.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘Template.exe’ (CLR v4.0.30319: Immersive Application Domain): Loaded ‘C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
The program ‘[4060] Template.exe’ has exited with code 0 (0x0).

Could you attach UnityPlayer.log ? http://docs.unity3d.com/Manual/windowsstore-debugging.html

Hmmm…

I delete the VS project and export from Unity with Unity C# Projects options.
Back to Visual Studio :

  • Open project
  • Select “Master” “x86”
  • Launch with “Local Machine”
  • Black screen
  • I click in the screen and got a popup about Assembly-CSharp.dll
  • I click OK and go back the test app. And It works :eyes:
  • I go back to Visual Studio and stop the app.
  • Launch it again… No popup, Unity Logo show up then the skybox of the empty project :face_with_spiral_eyes:

I try it with my project to test Input same behavior. It works fine (beside gamepad not recognized) at the second run.

Still the Close Button of the windows doesn’t close the app (I just go back to Visual Studio).

2134011--140585--popup.jpg
2134011–140586–UnityPlayer.log.txt (625 Bytes)

Does the same thing happen if you launch it from start menu rather than from Visual Studio? It might just be loading symbols at startup if you have debugger attached and a slow network connection.

I can’t repeat the problem any more… I don’t know what have change but it works.
There is still the problem with the GamePad (Logitech Rumble Pad 2). I have read that since Unity 5 that it should not be a problem for any gamepad, no ?

It shouldn’t be, just be sure to enable HumanInterfaceDevice in PlayerSettings->Capabilities (Windows Store Apps), and if you’re building on top of old directory, delete Package.appxmanifest first.

Thanks for the help.

It’s allmost working. After several try, I think that the problem came from the antivirus.