|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
|
|
|
Re: Fwd: reparenting a GtkDrawingArea with OpenGLOn 5/20/09 2:43 PM, Jeff Eberl wrote:
> After a lot of print statements, and some new callbacks, I've discovered > half of the problem. > > I was keeping the gtkContext* around, and it's been invalidated. So a > simple call to gtk_widget_get_gl_context fixed that. > > I connected to the realize and unrealize signals, and the remove calls > unrealize, and the add calls realize. But there is another problem, the > glLists and glTextures seem to be getting invalidated. Looking at the > gears code, it looks like the realize creates a new list (glGenList) but > there's no where that the list gets deleted. Does this mean the gears > app is leaking video resources? Or is it getting cleaned up somewhere? Technically, yes. But I think that the video driver will clean up any resources associated with the context when the context goes away. > For now, I'm going to delete all lists and textures in the unrealize > event, and create them again in the realize event. I'm hoping this is > overkill, and someone knows how to fix, or revalidate the lists/textures > without completely reallocating them. I think deleting them yourself is the safe, responsible thing to do--kind of like freeing memory in a C program. Sure, most modern operating systems will reacquire the memory when the process ends; but even in programs that aren't expected to be long running it's considered good practice to release resources when you're done with them. I do not think there's any way to "revalidate" these resources. But are you really going to be swapping these widgets around so much that the cost of reallocation is likely to be onerous? -- Braden McDaniel e-mail: <braden@...> <http://endoframe.com> Jabber: <braden@...> _______________________________________________ gtkglext-list mailing list gtkglext-list@... http://mail.gnome.org/mailman/listinfo/gtkglext-list |
| Free embeddable forum powered by Nabble | Forum Help |