Ok, so I should call MakeCurrent() if I'm using MonoDroid 4.0.4 but not if I'm on 4.0.6 in the onLoad. In OnResize I should call it anyway.

Anyway, is there a way of getting 4.0.5? I have access to 4.0.4 and 4.0.6 but not to the beta 4.0.5 and I'd love to give it a go.

Also, is there a way of doing it manually to see where does it fail and maybe try to do it differently? I know you can create an AndroidWindow and initialize the surface within (that's what you do in GLDiag) is there a way of setting it as the surface/window for that view?

Thanks,
Eduardo

On 4/17/2012 5:13 PM, Andreia Gaita wrote:

On Tuesday, April 17, 2012 at 3:58 PM, Konaju Games (Dev) wrote:

If you are using AndroidGameView, you now need to call MakeCurrent() as the first thing in OnLoad().

I did this, and got rid of my attempt at creating a second OpenGL context and the exception disappeared in my project.

On 4.0.6 you don't need to do this, the context is already made current when OnLoad is called.

The places where you need to call MakeCurrent is if you use OnResize (which can happen at any point and there's no guarantee that the context is current), or if you switch threads and do something with the context that makes it not current.

Any surface creation errors are going to occur before OnLoad is called, during the CreateFrameBuffer call. If CreateFrameBuffer throws no exceptions and OnLoad is called successfully, that means you have a context and a surface and the context is current.


andreia gaita
-------------------
blog.worldofcoding.com <http://blog.worldofcoding.com>
github.com/andreiagaita <http://github.com/andreiagaita>

Sly

On Apr 17, 2012 8:17 PM, "Eduardo Jimenez" <[email protected] <mailto:[email protected]>> wrote:
Do you mean that you have to stop manually creating the frame buffer on loading? Or is it something else? That one I've got covered but if it's something else I don't know...

Eduardo

On 4/17/2012 12:00 PM, Konaju Games (Dev) wrote:

There was a change to OpenGL initialization in 4.0.5 described in the release notes. That change will be required for any older code.

Sly

On Apr 17, 2012 4:19 PM, "Eduardo Jimenez" <[email protected] <mailto:[email protected]>> wrote:
GLCube won't work for some reason. It crashes with no callstack. Meanwhile the triangle ES 2.0 works in 4.0.4 but I think it doesn't in 4.0.6, I'll check it in a bit.

BTW, how can I get an older beta version of Mono?

Cheers,
Eduardo

On 4/16/2012 11:31 PM, Andreia Gaita wrote:
BTW, have you tried other OpenGL samples like the GLCube? I've done a few changes to try and workaround this problem, it might work on the Galaxy S.


andreia gaita

On Monday, April 16, 2012 at 9:03 PM, Eduardo Jimenez wrote:

I've done a little bit of testing and trying things out:

- Mono 4.0.4 is giving me problems in the Run() function. It hangs and
won't call the Update or Render functions
- I think that the error code (0x3000) corresponds to EGL_SUCCESS, but I suppose that's just a coincidence, since it should return the surface
handle.

I don't know but it's very odd.

Cheers,
Eduardo

On 4/16/2012 8:45 PM, Eduardo Jimenez wrote:
Hi,

I'm trying to run an OpenGL ES app on the Samsung Galaxy S, since it's one of the most common Android phones out there capable of OpenGL ES
2.0 but I'm unable to. It crashes with the following statement:

OpenTK.Platform.Android.EglException: EglCreateWindowSurface failed
with error 12288 (0x3000)

So I tried to run the GLDiag example and it crashed with the same
exact error. I've added the whole stacktrace in case it may be useful. In any case it's when creating the frame buffer. It seems not to be working for some weird reason. It works just fine in my Samsung Galaxy
Tab. I'm trying to get my hands on more phones to be able to say
whether it happens on other phones as well.

In any case, I'm reverting to version 4.0.4 to see if that fixes it.
Any help here will be much appreciated.

Best regards,
Eduardo


OpenTK.Platform.Android.EglException: EglCreateWindowSurface failed
with error 12288 (0x3000)
[ERROR] FATAL UNHANDLED EXCEPTION:
OpenTK.Platform.Android.EglException: EglCreateWindowSurface failed
with error 12288 (0x3000)
at OpenTK.Platform.Android.AndroidWindow.CreateSurface
(Javax.Microedition.Khronos.Egl.EGLConfig config) [0x00058] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGraphicsContext.cs:338

at OpenTK.Platform.Android.AndroidGraphicsContext.Init
(OpenTK.Graphics.GraphicsMode mode, IWindowInfo win, IGraphicsContext
sharedContext, GLContextVersion glesVersion, GraphicsContextFlags
flags) [0x0013e] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGraphicsContext.cs:132

at OpenTK.Platform.Android.AndroidGraphicsContext..ctor
(OpenTK.Graphics.GraphicsMode mode, IWindowInfo window,
IGraphicsContext sharedContext, GLContextVersion glesVersion,
GraphicsContextFlags flags) [0x00006] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGraphicsContext.cs:83

at
OpenTK.Platform.Android.AndroidGraphicsContext.CreateGraphicsContext
(OpenTK.Graphics.GraphicsMode mode, IWindowInfo window,
IGraphicsContext sharedContext, GLContextVersion glVersion,
GraphicsContextFlags flags) [0x00000] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGraphicsContext.cs:44

at OpenTK.Platform.Android.AndroidGameView.CreateContext ()
[0x00000] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGameView.cs:307

at OpenTK.Platform.Android.AndroidGameView.CreateFrameBuffer ()
[0x00000] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGameView.cs:158

at Mono.Samples.GLDiag.PaintingView.CreateFrameBuffer () [0x00436]
in D:\XNA\Android\MonoDroid Samples\GLDiagnostics\PaintingView.cs:105
at OpenTK.Platform.Android.AndroidGameView.LoadInternal
(System.EventArgs e) [0x00000] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGameView.cs:234

at OpenTK.Platform.Android.AndroidGameView.SurfaceCreated
(ISurfaceHolder holder) [0x0005d] in
/home/jpobst/Desktop/mfa-406/OpenGLES/OpenTK/Platform/Android/AndroidGameView.cs:104

at
Android.Views.ISurfaceHolderCallbackInvoker.n_SurfaceCreated_Landroid_view_SurfaceHolder_ (IntPtr jnienv, IntPtr native__this, IntPtr native_holder) [0x00010]
in
/home/jpobst/Desktop/mfa-406/Mono.Android/platforms/android-8/src/generated/Android.Views.ISurfaceHolder.cs:157

at (wrapper dynamic-method)
object:9a875116-8f83-4ee0-ad07-84a6b2459c27 (intptr,intptr,intptr)

_______________________________________________
Monodroid mailing list
[email protected] <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid

_______________________________________________
Monodroid mailing list
[email protected] <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid



_______________________________________________
Monodroid mailing list
[email protected]  <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid


_______________________________________________
Monodroid mailing list
[email protected] <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid



_______________________________________________
Monodroid mailing list
[email protected]  <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid


_______________________________________________
Monodroid mailing list
[email protected] <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid

_______________________________________________
Monodroid mailing list
[email protected] <mailto:[email protected]>

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid



_______________________________________________
Monodroid mailing list
[email protected]

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid

_______________________________________________
Monodroid mailing list
[email protected]

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid

Reply via email to