[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [E-devel] Evas GL engine patch



> In fact, the problem is that when you create/resize a window,
> _evas_gl_common_viewport_set() is called, and this function changes
> the GL viewport and the view matrices. The thing is, these changes
> affect all the windows, not only the created/resized window. A way
> to fix that would be to call _evas_gl_common_viewport_set() each
> time a window is rendered, before the rendering process begins
> (at the start of the function evas_render_updates_internal() for
> example). Only thing, I can't see a function that is called at the
> start of the rendering process in the engine API (something like
> pre_render()).
> 
> I've written a small patch that calls _evas_gl_common_viewport_set()
> in the eng_output_redraws_rect_add() method of the gl_x11 engine
> (because this method is called at the start of the rendering process)
> just as a proof that it could fix the bug, but this is definitely
> not the place to put this code. The patch is attached.
> 
> Please tell me what you think.
> 
> Cheers,
> Simon TRENY <MoOm>

	I've never been able to actually use the evas gl engine due
to something about my glx setup which is mysterious to me (and which
I don't have the patience to try and resolve). On top of that, the
OpenGl lib is something I have no familiarity with at all, so I can't
tell you much of anything myself.

	One thing though.. If one needs to have the 'viewport' and
'view matrices' set for each rendering pass, then I would say that
this should maybe be done per obj, ie. in the internal engine render
functions of each object... ?? Or does this only affect the way the
gl render buffer gets 'put' on the screen?

	However, something like an engine level 'pre-render' function
seems potentially useful.. I believe that raster has mentioned this
somewhere as well.


   jose.