Exporting to a Player
Since 2018, XBox One UWP games have access to 6 exclusive CPU cores, 5GB of RAM, and full access to the GPU for Direct3D12-based games.
First, you need to export your player using the UWP guide, then you need to add being able to develop for the XBox One to your Microsoft developer account (if you have not already done this). The guide below shows you how to do this and how to send your UWP player to the XBox One.
To set up an XBox One dev account you can join id@xbox : https://www.xbox.com/en-GB/developers/id
It's also possible to develop on the XBox One using the Creators programme : https://developer.microsoft.com/en-GB/games/xbox/xboxlive/creator
Normally there is a $20 (personal) $99 (business) one-off fee for publishing on the Microsoft store, there are various schemes from Microsoft to receive a voucher, for example, if you are a student: https://azureforeducation.microsoft.com/en-us/Institutions
You may need to install the 'Dev Mode Activation App' on your XBox One and the ID of the XBox One console entered into the Partner Center. For all this, see: https://docs.microsoft.com/en-us/windows/uwp/xbox-apps/devkit-activation
The actual Dev Mode Activation App can be found here: https://www.microsoft.com/store/productId/9VWGNH0VBN60
Make sure your XBox One is in Developer Mode by starting the 'Dev Mode Activation App', this can take a long time - you may think it's broken, it isn't!
To activate, the link didn't work from the XBox One, I had to enter the code by pressing + here: https://partner.microsoft.com/en-us/xboxconfig/devices/index
On the XBox One in dev mode, you will have to add an 'XBox Live' test account. It has to be an existing 'XBox Live' account (it doesn't need to have a Gold subscription). It needs to be 'logged in'.
Note: In dev mode you can press the XBox icon on your controller to see what looks like a normal XBox One menu system, here you can setup Wifi, etc. It won't already have the settings from the normal (none-dev) XBox One menu - it's like having two completely different XBox One consoles.
Install Visual Studio 2019 (the latest Community free edition will do fine).
In Gideros Studio, add controller support to your game (see the "Controllers" plugin), you can test on the Gideros player before the export.
Export to UWP. Open the exported folder when asked at the end of the export by clicking 'Show'.
Double-click the 'giderosgame.sin' file, if asked set the default program to Visual Studio 2019.
Once Visual Studio has finished loading your game, change the Debug dropdown item in Visual Studio to 'Release' (1), and the output to 'x64' (2).
Click on the 'Debug' menu item at the top of the screen, select the project properties (bottom item) for your game (3).
Select the 'Debugging' properties for the project (4). Change the setting from 'Local Machine' to 'Remote Machine' (5).
Set 'Machine Name' (6) to the hostname or IP of your XBox One (in developer mode).
Set 'Authentication Type' to 'Universal (Unencrypted Protocol)', normally this is already the default.
Click 'ok' to exit Properties (7).
Now click the green 'Play' icon (8) in the toolbar to send the game to the Xbox One. The game will be built and installed on the console.
Sometimes Visual Studio will prompt for a pin, on the XBox One in 'Dev Home', click 'Show Visual Studio Pin' to see this pin.
If you export a player to the XBox One then you can use that for really rapid development - sending your game code and assets across in seconds.
If you get an error:
If you get an error like "Error C2567 unable to open metadata in 'c:\program files (x86)\microsoft visual studio\2019\community\vc\tools\msvc\14.25.28610\lib\x86\store\references\platform.winmd', file may have been deleted or moved"
It means that Microsoft have updated the lib since the Gideros Template was created. You can fix it with this simple 'hack':
- Look in c:\program files (x86)\microsoft visual studio\2019\community\vc\tools\msvc\
- Copy it as this name: "c:\program files (x86)\microsoft visual studio\2019\community\vc\tools\msvc\14.25.28610" (or similar)