Alexander Nagel wrote:
Hi all,
i have a little program with a gtkgl capable drawing area just like in
various example programs.

But i have a problem:

The first call of GdkGLContext *glcontext = gtk_widget_get_gl_context (object);
GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable (object);
gdk_gl_drawable_gl_begin (gldrawable, glcontext)
in the configure_event callback always fails with this message:

GdkGLExt-CRITICAL **: file gdkgldrawable.c: line 141
(gdk_gl_drawable_gl_begin): assertion `GDK_IS_GL_DRAWABLE (gldrawable)'
failed


I guess you cant call that function till the widget is not realized. After it has been realized, then it will work.

About the other problem, provide us your 'lspci' and 'glxinfo' output.
Had you tryed also to run glxgears?

Greeting,
Luca


Further calls of this function work normal.
I can avoid this by adding
if ( ! GDK_IS_GL_DRAWABLE( object ) ) return FALSE;

So far i didn't manage to anything opengl specific in the drawing area.
Even the simpliest thing like in simple.c in the gtkgl examples don't
work.
Is it normal that the first call fails?
Is this the reason that i can't render opengl things in the area?

Thanks for any hints
Alex


Here is the callback function

gboolean on_drawingarea1_configure_event (GtkWidget *object,
GdkEventConfigure *event, gpointer user_data)
{
        GdkGLContext *glcontext;
        GdkGLDrawable *gldrawable;
        baf_log ("configure");
if (!GTK_WIDGET_REALIZED (object)) return FALSE;
        if (!GDK_IS_GL_DRAWABLE(object))
                return FALSE;
        glcontext = gtk_widget_get_gl_context (object);
        gldrawable = gtk_widget_get_gl_drawable (object);
        if (!gdk_gl_drawable_gl_begin (gldrawable, glcontext))
        {
                g_print ("no draw in configure\n");
                return FALSE;
        }
        baf_ogl->change_viewport (object->allocation.width,
object->allocation.height);  
        gdk_gl_drawable_gl_end (gldrawable);
        return TRUE;
        

}

_______________________________________________
gtkglext-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkglext-list


_______________________________________________
gtkglext-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkglext-list

Reply via email to