Disappointed about Xamarin

Hi,

Just want to share my first 3 hours experience on Xamarin and MonoGame.

I had just completed an iPhone game using XCode and submitted it to Apple app store, now I need to write the Android version. I had a VB.NET & C# background and it was a long learning curve to me trying to complete a big program in objective-C. I was so happy to know that Xamarin and MonoGame exists so I don't need to learn Java (yea I totally forgotten what I learnt in uni already) and had been looking forward to get my hand on Xamarin for sometime.

So tonight I formatted my laptop and reinstalled win 7, installed .net 4.5, XNA 4, Xamarin 4.22, MonoGame 3.0, ADB driver, VC# 2010 express, and quite a few other things (too many, forgot what I installed already..), and had been able to run the first "click count" test program on my phone, everything was looking good. Up to here took me about couple of hours.

But then I started my first MonoGame for Android project (1.png, 2.png), and bang, crashed (3.png). How come it complains about XNA not exist where I've got it installed? Um, ok I right click the Reference and add it manually and compile again, and crash again (4.png), now it complains could not locate assembly for a few things, I tried to add the first one ( Lidgren.Network ) manually (5.png), and then it gave me another error (6.png), I am still struggling at the moment.

I believe it is fair to expect that the basic template needs to be working as a starting point, how can it crash so severely, did Xamarin/MonoGame did any testing?

I will continue google for a solution, but this is just disappointing.

Regards,
Alex

1.png 65.6K
3.png 185.3K
4.png 176.8K
5.png 86.7K
6.png 136.9K

Posts

  • You do realize that MonoGame is not written by Xamarin, right? All the problems you're having are related to MonoGame. Perhaps you should turn to them for solutions.

  • DaveHuntDaveHunt USMember ✭✭✭✭✭

    The easiest way to use MonoGame with Xamarin is to download the MonoGame sources and compile them under Xamarin. Then use the MonoGame-supplied templates to create your project, but delete the MonoGame/Lidgren references and manually add references to the DLLs you compiled yourself.

    There have been problems with the templates that MonoGame created for Xamarin Studio for a long time and they have not fixed them.

    As Joseph pointed out, the issues are with the MonoGame installer/templates, not with Xamarin Studio.

  • SKallSKall USMember ✭✭✭✭

    You might benefit from following the build instructions for Angry Ninjas: https://github.com/xamarin/AngryNinjas

  • MorneBothaMorneBotha ZAMember

    I have an Indie Xamarin licence, and have managed to get the AngryNinjas Android project from Github building successfully in Xamarin Studio (Win 7 32 bit host machine), and I have managed to create the org.mono.AngryNinjas.apk file, which I can install on the device (Samsung S7560 Android 4.2.2) but when I try to open the installed application it just closes without any error and no UI is even presented? Even in the emulator its not opening?

    I have tried playing around with the switches in the Android build settings for the Android project (added all CPU types, use shared Mono runtime, link all assemblies etc) but nothing seems to work. I am all out of ideas at this point and frankly disappointed at the absence of any documentation to get this example code working...

    Any help or advice (with some level of detail) would be appreciated ...

  • MorneBothaMorneBotha ZAMember

    I don't know if the attached error message means anything to anybody...?

  • DaveHuntDaveHunt USMember ✭✭✭✭✭

    frankly disappointed at the absence of any documentation to get this example code working...

    In fairness to Xamarin, that "example" was submitted by Kenneth Pouncey, who is, as far as I know, not associated with Xamarin.

  • MorneBothaMorneBotha ZAMember

    Not sure if this means anything to anyone:

    [Trace] error opening trace file: No such file or directory (2)
    [libc] WARNING: generic atexit() called from legacy shared library
    [monodroid-gc] GREF GC Threshold: 1800
    [libEGL] Emulator without GPU support detected. Fallback to software renderer.
    [libEGL] loaded /system/lib/egl/libGLES_android.so
    [MonoGame] AndroidGameWindow.CreateFrameBuffer
    [MonoGame] Creating Color:Default Depth:24 Stencil:0
    [MonoGame] Failed to create desired format, falling back to defaults
    [MonoDroid] UNHANDLED EXCEPTION: OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay) <0x00d70>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay,int) <0x00027>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,int,OpenTK.Graphics.GraphicsContextFlags) <0x00243>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,OpenTK.Graphics.GLContextVersion,OpenTK.Graphics.GraphicsContextFlags) <0x00053>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,OpenTK.Graphics.GLContextVersion,OpenTK.Graphics.GraphicsContextFlags) <0x00053>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.CreateContext () <0x00067>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.MakeCurrent () <0x0002f>
    [MonoDroid] at Microsoft.Xna.Framework.AndroidGameWindow.OnLoad (System.EventArgs) <0x0002b>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.LoadInternal (System.EventArgs) <0x00027>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.SurfaceCreated (Android.Views.ISurfaceHolder) <0x000ff>
    [MonoDroid] at Microsoft.Xna.Framework.AndroidGameWindow.Android.Views.ISurfaceHolderCallback.SurfaceCreated (Android.Views.ISurfaceHolder) <0x0001b>
    [MonoDroid] at Android.Views.ISurfaceHolderCallbackInvoker.n_SurfaceCreated_Landroid_view_SurfaceHolder_ (intptr,intptr,intptr) <0x0005f>
    [MonoDroid] at (wrapper dynamic-method) object.0a1d7cc5-f9db-49b7-bf75-1ad333f1fb5c (intptr,intptr,intptr) <0x00043>
    [mono]
    [mono] Unhandled Exception:
    [mono] OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [mono] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay display) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay display, Int32 version) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode mode, IWindowInfo win, IGraphicsContext sharedContext, Int32 major, GraphicsContextFlags flags) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContext sharedContext, GLContextVersion glesVersion, GraphicsContextFlags flags) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContex
    [mono-rt] [ERROR] FATAL UNHANDLED EXCEPTION: OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay display) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay display, Int32 version) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode mode, IWindowInfo win, IGraphicsContext sharedContext, Int32 major, GraphicsContextFlags flags) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContext sharedContext, GLContextVersion glesVersion, GraphicsContextFlags flags) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IG

  • MorneBothaMorneBotha ZAMember

    Not sure if this means anything to anyone:

    [Trace] error opening trace file: No such file or directory (2)
    [libc] WARNING: generic atexit() called from legacy shared library
    [monodroid-gc] GREF GC Threshold: 1800
    [libEGL] Emulator without GPU support detected. Fallback to software renderer.
    [libEGL] loaded /system/lib/egl/libGLES_android.so
    [MonoGame] AndroidGameWindow.CreateFrameBuffer
    [MonoGame] Creating Color:Default Depth:24 Stencil:0
    [MonoGame] Failed to create desired format, falling back to defaults
    [MonoDroid] UNHANDLED EXCEPTION: OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay) <0x00d70>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay,int) <0x00027>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,int,OpenTK.Graphics.GraphicsContextFlags) <0x00243>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,OpenTK.Graphics.GLContextVersion,OpenTK.Graphics.GraphicsContextFlags) <0x00053>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode,OpenTK.Platform.IWindowInfo,OpenTK.Graphics.IGraphicsContext,OpenTK.Graphics.GLContextVersion,OpenTK.Graphics.GraphicsContextFlags) <0x00053>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.CreateContext () <0x00067>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.MakeCurrent () <0x0002f>
    [MonoDroid] at Microsoft.Xna.Framework.AndroidGameWindow.OnLoad (System.EventArgs) <0x0002b>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.LoadInternal (System.EventArgs) <0x00027>
    [MonoDroid] at OpenTK.Platform.Android.AndroidGameView.SurfaceCreated (Android.Views.ISurfaceHolder) <0x000ff>
    [MonoDroid] at Microsoft.Xna.Framework.AndroidGameWindow.Android.Views.ISurfaceHolderCallback.SurfaceCreated (Android.Views.ISurfaceHolder) <0x0001b>
    [MonoDroid] at Android.Views.ISurfaceHolderCallbackInvoker.n_SurfaceCreated_Landroid_view_SurfaceHolder_ (intptr,intptr,intptr) <0x0005f>
    [MonoDroid] at (wrapper dynamic-method) object.0a1d7cc5-f9db-49b7-bf75-1ad333f1fb5c (intptr,intptr,intptr) <0x00043>
    [mono]
    [mono] Unhandled Exception:
    [mono] OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [mono] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay display) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay display, Int32 version) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode mode, IWindowInfo win, IGraphicsContext sharedContext, Int32 major, GraphicsContextFlags flags) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContext sharedContext, GLContextVersion glesVersion, GraphicsContextFlags flags) [0x00000] in :0
    [mono] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContex
    [mono-rt] [ERROR] FATAL UNHANDLED EXCEPTION: OpenTK.Platform.Android.EglException: Failed to find a valid GraphicsMode configuration
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsMode.ChooseConfig (Javax.Microedition.Khronos.Egl.EGLDisplay display) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsMode.Initialize (Javax.Microedition.Khronos.Egl.EGLDisplay display, Int32 version) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext.Init (OpenTK.Graphics.GraphicsMode mode, IWindowInfo win, IGraphicsContext sharedContext, Int32 major, GraphicsContextFlags flags) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext..ctor (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IGraphicsContext sharedContext, GLContextVersion glesVersion, GraphicsContextFlags flags) [0x00000] in :0
    [mono-rt] at OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext (OpenTK.Graphics.GraphicsMode mode, IWindowInfo window, IG

Sign In or Register to comment.