Skip to main content

Using XAML on Monogame for WinRT (Part 1)

Introduction

Since I am planning to develop games for WinRT, I found out that the MonoGame is the most suitable framework for people like me who has experience with developing games with XNA framework.

Although Windows Phone 7 offers to integrate Silverlight components with XNA, WinRT architecture is completely different from the previous framework. XNA games are not allowed to upload and showcase to new appstore because of the new terms and condition requirements and there's no way to integrate new Metro UI with XNA either.

MonoGame solves this problem by creating XNA framework like wrapper over SharpDX which is the best and fastest DirectX wrapper available on current opensource projects.  However MonoGame offers XNA looks alike framework, the best solution would be combining Metro UI with MonoGame framework.

Here is the tutorial of how to integrate MetroUI with MonoGame framework.
Thanks to Petrroll on MonoGame forum for the sample code of MonoGame with XAML.

If you haven't downloaded the latest library for MonoGame for WinRT, please download here.

Step 01

Create a new Blank Project using Metro Style application. I am using Visual Studio 2012 with Windows 8 Release Preview Version.



Step 02

Add the downloaded MonoGame library to the references. If you haven't downloaded the latest library for MonoGame for WinRT, please download here.

Continue to the next section by clicking here for the actual source code.



Comments

Popular posts from this blog

Using XAML on Monogame for WinRT (Part 2)

Integrating Monogame with XAML Metro UI If you're coming from the previous section, you now have a metro UI application project with blank page and also have monogame.windows8 library reference to the project. Now Let's fix some source code for the  pages to get XAML working with monogame. Step01 ( Hacking App.xaml.cs file) App.xaml.cs delivers the most important start point while rendering a particular page in Metro UI application. I added gamePage and mainPage as  a public variables as they become accessible from other classes to for page nagivations. Here is the source code for to see what it looks like for the final App.xaml.cs file. sealed partial class App : Application     {         public ContentManager Content { get; set; }         public GameServiceContainer Services { get; set; }         public GamePage gamePage;         public MainPage mainPage;   ...

Steps to add IAP for Unity iOS and publishing steps

Adding IAP Create a new app ID and create a new app using that ID on apple connect Add IAP and make sure that screenshots are provided to get the IAP in Ready to Submit state. To test IAP on test account, you need to wait between 12-24 hours to make the product available to test. App installation failed, Could not write to the device Restart your iphone and xcode. Sometimes restart Mac or build 3-4 times If you have another device such as iPad, build and run for that device and then run it back with previous device again Building to device Export XCode project from Unity as usual. Create new development certificate for building into the device Mark automatic code signing if you're in development and testing the app Select your team in the provision profile Note : If you're using onesignal, make sure you also select your team in targets in onesignal project as well. Publishing to appstore Create distribution profile for app and download it U...

Resolving the app install conflicts for firebase notifications!

Most of the time when you cloned a Unity project which has firebase notification integrated, No matter what bundle ID you changed for the newly cloned project, you'll always received resolve conflicts error. Mainly because whenever you import firebase SDK and make jar resolve, google play services repackage some of the .aar files with the old bundle ID unless you make the force resolve again! The first options would be 1 - Delete all the .aar files in the Plugins->Android folder 2 - Go to Assets->PlayService resolver->Android->Force resolve and the required .aar files will be rebuilt using the new bundle ID But for some reason if you don't want to use force resolve options, you can  manually modify some of the aar file and rebuild the apk again. 1 - Look for com.google.firebase.firebase-common-12.0.1.aar and com.google.firebase.firebase-iid-12.0.1.aar file inside Android plugins folder 2 - change .aar file to .zip file and extract them to seperate...