On Fri, 29 Nov 2013 09:55:00 +0400 Stanislav Vorobiov <s.vorob...@samsung.com> said:
> Hi, just wanted to make sure > > > anyway - this is in upstream! merged. it'll be out in 1.8. > You mean it's merged in you local branch and will be merged to upstream with > 1.8 release ? Because I can't find it in master. i havent pushed it yet. it's committed to my local git already - it'll go up next push. > On 11/28/2013 03:23 PM, Carsten Haitzler (The Rasterman) wrote: > > On Thu, 28 Nov 2013 15:01:02 +0400 Stanislav Vorobiov > > <s.vorob...@samsung.com> said: > > > > yeah.. i've hit those before. gles2's "runtime glsl compiler is optional" > > thing imho is a major standard bug. > > > > anyway - this is in upstream! merged. it'll be out in 1.8. my mulling over > > if it was a bug or not was to determine if it goes into the 1.8 release or > > is held for 1.9 development as we only want to fix bugs at this point... > > since release is due this weekend. :) > > > >> IMHO it's a standard bug, but nobody cares :) > >> > >> On 11/28/2013 02:53 PM, Carsten Haitzler (The Rasterman) wrote: > >>> On Thu, 28 Nov 2013 13:33:42 +0400 Stanislav Vorobiov > >>> <s.vorob...@samsung.com> said: > >>> > >>>> Yes, I think it's more of a bugfix. After all, there's no EGL standard > >>>> that strictly defines how should textures that are derived from pixmaps > >>>> behave, thus, application code shouldn't assume anything either. > >>> > >>> BUT... it requires an extension to figure it out... which means that > >>> technically the original standard is broken... UNLESS we ASSUME its > >>> yinverted always... :) so either the original is broken (standard bug)... > >>> or... the assumption is a requirement. :) > >>> > >>>> On 11/28/2013 01:20 PM, Carsten Haitzler (The Rasterman) wrote: > >>>>> On Thu, 28 Nov 2013 12:02:36 +0400 Stanislav Vorobiov > >>>>> <s.vorob...@samsung.com> said: > >>>>> > >>>>> and that looks great! well done! :) now the question is... is this a new > >>>>> feature.. or a bug fix... hmm i guess it's a bug fix as it makes > >>>>> something work given specific drivers and setup that didn't work > >>>>> before, BUT needs an extension to do it. > >>>>> > >>>>>> Instead of hardcoding yinvert=1 we should query for > >>>>>> EGL_NOK_texture_from_pixmap extension and if it's present > >>>>>> use EGL_Y_INVERTED_NOK value > >>>>>> --- > >>>>>> src/modules/evas/engines/gl_x11/evas_engine.c | 20 +++++++++++++++++ > >>>>>> + +- 1 file changed, 19 insertions(+), 1 deletion(-) > >>>>>> > >>>>>> diff --git a/src/modules/evas/engines/gl_x11/evas_engine.c > >>>>>> b/src/modules/evas/engines/gl_x11/evas_engine.c index d25610f..4e5c22c > >>>>>> 100644 > >>>>>> --- a/src/modules/evas/engines/gl_x11/evas_engine.c > >>>>>> +++ b/src/modules/evas/engines/gl_x11/evas_engine.c > >>>>>> @@ -71,6 +71,7 @@ struct _Render_Engine > >>>>>> static int initted = 0; > >>>>>> static int gl_wins = 0; > >>>>>> static int extn_have_buffer_age = 1; > >>>>>> +static int extn_have_y_inverted = 0; > >>>>>> > >>>>>> typedef void (*_eng_fn) (void); > >>>>>> typedef _eng_fn (*glsym_func_eng_fn) (); > >>>>>> @@ -90,6 +91,9 @@ static Eina_Bool eng_preload_make_current(void *data, > >>>>>> void *doit); > >>>>>> #ifndef EGL_BUFFER_AGE_EXT > >>>>>> # define EGL_BUFFER_AGE_EXT 0x313d > >>>>>> #endif > >>>>>> +#ifndef EGL_Y_INVERTED_NOK > >>>>>> +# define EGL_Y_INVERTED_NOK 0x307F > >>>>>> +#endif > >>>>>> > >>>>>> _eng_fn (*glsym_eglGetProcAddress) (const char *a) = NULL; > >>>>>> void *(*glsym_eglCreateImage) (EGLDisplay a, > >>>>>> EGLContext b, EGLenum c, EGLClientBuffer d, const int *e) = NULL; @@ > >>>>>> -711,6 +715,10 @@ gl_extn_veto(Render_Engine *re) { > >>>>>> extn_have_buffer_age = 0; > >>>>>> } > >>>>>> + if (strstr(str, "EGL_NOK_texture_from_pixmap")) > >>>>>> + { > >>>>>> + extn_have_y_inverted = 1; > >>>>>> + } > >>>>>> } > >>>>>> else > >>>>>> { > >>>>>> @@ -2225,6 +2233,7 @@ eng_image_native_set(void *data, void *image, > >>>>>> void *native) EGLConfig egl_config; > >>>>>> int config_attrs[20]; > >>>>>> int num_config, i = 0; > >>>>>> + int yinvert = 1; > >>>>>> > >>>>>> eina_hash_add > >>>>>> (re->win->gl_context->shared->native_pm_hash, &pmid, im); > >>>>>> @@ -2250,6 +2259,15 @@ eng_image_native_set(void *data, void *image, > >>>>>> void *native) if (!eglChooseConfig(re->win->egl_disp, config_attrs, > >>>>>> &egl_config, 1, &num_config)) > >>>>>> ERR("eglChooseConfig() failed for pixmap 0x%x, > >>>>>> num_config = % i", (unsigned int)pm, num_config); > >>>>>> + else > >>>>>> + { > >>>>>> + int val; > >>>>>> + if (extn_have_y_inverted && > >>>>>> + eglGetConfigAttrib(re->win->egl_disp, > >>>>>> egl_config, > >>>>>> + EGL_Y_INVERTED_NOK, &val)) > >>>>>> + yinvert = val; > >>>>>> + } > >>>>>> + > >>>>>> memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface)); > >>>>>> n->pixmap = pm; > >>>>>> n->visual = vis; > >>>>>> @@ -2263,7 +2281,7 @@ eng_image_native_set(void *data, void *image, > >>>>>> void *native) ERR("Try eglCreateImage on EGL with no support"); > >>>>>> if (!n->egl_surface) > >>>>>> ERR("eglCreatePixmapSurface() for 0x%x failed", > >>>>>> (unsigned int)pm); > >>>>>> - im->native.yinvert = 1; > >>>>>> + im->native.yinvert = yinvert; > >>>>>> im->native.loose = 0; > >>>>>> im->native.data = n; > >>>>>> im->native.func.data = re; > >>>>>> -- > >>>>>> 1.7.9.5 > >>>>>> > >>>>>> > >>>>>> ------------------------------------------------------------------------------ > >>>>>> Rapidly troubleshoot problems before they affect your business. Most > >>>>>> IT organizations don't have a clear picture of how application > >>>>>> performance affects their revenue. With AppDynamics, you get 100% > >>>>>> visibility into your Java,.NET, & PHP application. Start your 15-day > >>>>>> FREE TRIAL of AppDynamics Pro! > >>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk > >>>>>> _______________________________________________ enlightenment-devel > >>>>>> mailing list enlightenment-devel@lists.sourceforge.net > >>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > >>>>>> > >>>>> > >>>>> > >>>> > >>>> > >>>> ------------------------------------------------------------------------------ > >>>> Rapidly troubleshoot problems before they affect your business. Most IT > >>>> organizations don't have a clear picture of how application performance > >>>> affects their revenue. With AppDynamics, you get 100% visibility into > >>>> your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of > >>>> AppDynamics Pro! > >>>> http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk > >>>> _______________________________________________ enlightenment-devel > >>>> mailing list enlightenment-devel@lists.sourceforge.net > >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > >>>> > >>> > >>> > >> > > > > > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ras...@rasterman.com ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel