Monogame vs ANX - windows-8

I am looking for a Win8-Metro-friendly framework for my next game project. Two of the non-commercial options are Monogame and ANX. Both are XNA like. I am wondering which one is more mature and reliable?
What are the pros and cons?

MonoGame is coming up to version 3.0 stable release while ANX is in alpha at version o.4.x.
MonoGame is trying to be XNA 4.0 API compatible.
Microsoft evangelists are promoting MonoGame as a viable alternative to getting your XNA games onto the Windows 8 Store.
MonoGame has over several games already on the Windows 8 store that have passed approval and games released on iOS, Android, MacOS, Linux and soon PlayStation Vita.
I cannot comment on ANX, as I've never used it, but if it surpasses everything I've mentioned above, use it.

Related

Does C++/WinRT require installation of Windows Insider Preview builds of Windows 10?

This C++/WinRT announcement states "What this also means is that you no longer need to wait for us to update GitHub following the release of a new Windows SDK. Indeed, we will no longer be publishing the updated headers on GitHub at all since you can get them directly from the Windows SDK."
However if one delves one click further one finds that the "Windows 10 Preview Build of the SDK [is] to be used in conjunction with Windows 10 Insider Preview (Build 17025 or greater)" and "Installation on an operating system that is not a Windows 10 Insider Preview build is not supported and may fail."
Right now must one install a Windows Insider Preview of Windows 10? This is either a scary and lengthy process or straight impossible depending on one's admin rights.
Or can one grab the SDK and use the C++/WinRT bits on a box with a standard Windows 10 build?
Is the easiest route for some aspects of the C++/WinRT toolchain still GitHub?
How about if one is developing on a non-Windows-10 box, e.g. Windows 7? Zillions of commercial developers are in this situation and aren't in control of that.
Will the situation change and if so when?
Going forward does one wait for periodic updates to SDK previews, and if so how does one consume them?
Preview versions of the Windows SDK will not install on a non-Insider build of Windows. This is a restriction of the Windows SDK and not specific to C++/WinRT. In the long run (once RS4 ships) this won’t be a problem since you’ll be able to install the final Windows SDK for RS4 without this restriction.
In the short term, you need an Insider build of Windows to install the SDK, but you can then use that to target previous versions of Windows. I’m not sure whether it would work on Windows 7, but I don’t think that any developer using C++/WinRT would care to use Windows 7 when the Windows Runtime isn’t even available on that version of Windows at all.
The cppwinrt.exe compiler also relies on Windows 10 APIs to function. While this isn’t a dependency of code built with C++/WinRT, it is a requirement for building C++/WinRT components. Of course, the resulting binaries can then be executed on older versions of Windows, provided you handle light-up in the usual ways, such as with delay-loading.

Has Vici CoolStorage been updated to work with WinRT / Metro?

The project website does not indicate any support for WinRT.
Is there a way to do this? We (like many others, presumably) had bet on Vici CoolStorage for its cross-platform capabilities.
A version is in the works that will support .NET 4.5, Windows Phone 8, WinRT (Windows 8), Xamarin.iOS and Xamarin.Android. It will be built as a PCL (portable class library). Support for Windows Phone 7 will be dropped because the platform lacks too many common .NET framework features that are available on other platforms.
This new version will be available early December.

What are the most recent instructions on setting up a Windows 8 Monogame Project?

I'm having trouble following all of the "tutorials" and "documentation" MonoGame is providing for building a Windows 8 App. The setup is outdated because the directories don't match anymore. I installed MonoGame with the latest binary and I can access the Windows 8 template in VS 2012. I can actually use images fine and compile and do a great amount of work done, but the audio and spritefonts don't work after I've followed the importing of the xnb files from VS2010 as documented. Also, are there any Windows8 Monogame samples? I could not find one.
You might give this post by Bob Familiar a try:
http://blogs.msdn.com/b/bobfamiliar/archive/2012/08/02/windows-8-xna-and-monogame-part-2-getting-started.aspx
Just take note of some of the post's comments by Dave Voyles noting some name changes since the original post.
As for MonoGame samples for Windows 8, the third post in the series happens to have a walkthrough for creating a Tic-Tac-Toe game.
The MonoGame 3.0 Stable Released on Mon, Jan 21st which include a Windows installer that will install all the MonoGame templates for Visual Studio 2010 and Visual Studio 2012 without have to bring down the MonoGame 3.0 Branch from GitHub. Installer can be found here: http://monogame.codeplex.com/downloads/get/601094
If you need step by step instructions look at my post here: http://blogs.msdn.com/b/tarawalker/archive/2012/12/04/windows-8-game-development-using-c-xna-and-monogame-3-0-building-a-shooter-game-walkthrough-part-1-overview-installation-monogame-3-0-project-creation.aspx
This is a step by step tutorial to build a Windows 8 XNA MonoGame, which also covers .xnb files. If you need Content Processors for Cross Platform support of different textures, font, sound, etc. Look at the MonoGame wiki about Content Processing/Processors on their monogame.net site. Sorry I can't provide the link to the Content Processor info, StackOverflow won't let me post more than 2 links as a new user.

Are Metro style apps managed or native and if native how can they run on both arm and x86?

I originally assumed that Metro style apps were managed (.NET) assemblies whether they are written in C# or C++ and I thought C++ for Metro style apps would be similar in concept to C++/CLI.
However, I now heard on a DotNet Rocks podcast that Metro style apps written in C++ are native. Nevertheless I understand that Metro style apps run on all three CPU architectures Metro is available for. How is this accomplished? Do Metro style apps come with different binaries and only one is chosen/downloaded? Or is it like on Mac OS X where one binary can contain code for different CPUs?
Code that uses only system or OS services from WinRT can be used
within an app and distributed through the Windows Store for both WOA
and x86/64.
from this MSDN blog page
If you go watch this BUILD video things should start to clear up -- http://channel9.msdn.com/events/BUILD/BUILD2011/TOOL-930C (A .NET developer's view of Windows 8 app development)
Basically there is a CLR (.NET 4.5) running. I didn't say a full CLR. WinRT from a .NET perspective is just a .NET Profile (sort of a way that they can layout the API differently exposing or hiding things). The new WinRT APIs use a new version of [gulp] COM, but it is optimized for use with .NET. I'm not 100% sure on the C++ angle. I suspect with C++, you have a few options. Compile for each platform (arm and x86) or compile to IL. Not sure if this helps you at all (I hope so).

Does the .Net Mono project support the iPad?

I hear the mono project (for allowing .net apps to run on many O/Ss) has come a long way (Winforms support, etc.)
Does it (or are there plans for it to) support porting to the iPad?
Yes, but it does not appear to be free (or cheap): MonoTouch