I have been working on the Windows Phone XNA exporter today, and I have finally understood Microsoft's new policy against XNA.
- XNA Windows Phone 7 games do work on Windows Phone 8
- You can compile XNA WP 7 games on a Windows 8 machine with Windows Phone 8 SDK, BUT even it is a Windows 8 machine with WP8 SDK, it will _still_ create WP7.1 applications.
- The only way to create real native Windows Phone 8 games is to use normal coding instead of XNA
I have also realized that Microsoft has TAKEN OUT of WP 7.1 SDK (and WP 8 SDK as a consequence), the nice auto-scale feature that used to enable any size of application to work full screen on a Phone. They just removed it. So for the moment, until I find a solution, the only way to have a full screen XNA app on a Windows Phone is to create it in 800x480 (which is the only resolution available for Windows Phone 7).
As the auto-scale feature is not available any more, Windows Phone 7 games when they run on a Windows Phone 8, are rendered in a 800x480 screen, and this screen is zoomed to fit the phone screen. This means that it is impossible with XNA to have games of the actual dimension of the screen (like 1280x768 for example). It will always be a scaled up 800x480. You may ask: if I set the size of the window of my game to 1280x768 it will work! No it wont : the game is rendered (without scaling) in a 800x480 surface (which means only the top-left of the application is displayed), and this screen is then scaled to fit the screen.
What I plan to do against this :
- Quickly : find a way to emulate the auto-scale feature so that any size of game window works with the exporter. The only problem is that the game will whatever the phone screen resolution, be in 800x480.
- Recreate the exporter using a library like Monogame. It is a XNA-like library, free, that will allow the exporter to create native Windows Phone 8 games.
Please keep posted, I add to this thread when I discover new things.