On Thu, 26 Feb 2015 22:13:15 +0000 Branko <bran...@s5tehnika.net> said:

> Dne 26. 02. 2015 ob 20:34 je Cedric BAIL zapisal(a):
> > Yes. You can easily get and modify the pixels of an Evas_Object_Image
> > the way you want. Go to
> > https://developer.tizen.org/dev-guide/2.3.0/org.tizen.mobile.native.appprogramming/html/guide/ui/evas_guide_image.htm
> > and search for "Setting Raw Data to Image Object".
> 
> Many thanks. I will look into that.
> 
> 
> 
> > No, Evas is a scenegraph. It does manage all the rendering of all the
> > primitive object in the best possible way. If you have idea on how to
> > improve rendering, that's where you should actually play :-) Also for
> > now, we don't have any scenegraph object for vector graphics, but we
> > are just working on it right now and may push that forward in the next
> > 1.14 release. You can look at my branch, devs/cedric/evas_vg to see
> > what I mean by that. Actually if you had feedback on what you are
> > looking for in a vector API, it would be really interesting. Regards,
> 
> Problem with scenegraphs is that they have to be copied into final 
> frame, which wastes bandwidth. I was thinking that in some circumstances 
> it could be done so that:

they do not need to be copied. scene graphs have nothing to do with copying.
that is simply one way of getting data somewhere. evas's renders use various
methods to get data from a to b depending on situation and available
mechanisms. the fb renderer that uses fbcon does indeed copy - it does this to
avoid seeing the rendering happening while scanout happens. we could have set
up fb panning and render to the offscreen buffer then "flip" when done, but it
wans't a key issue and requirement as fb engine is rarely used. the
software_x11 engine may copy (xshmputimage) or it may even use drm/dri2 to do
zero copy swaps (render to backing buffer directly, when done, swap buffers).
the gl rendering engine is the same. a swapbuffers is up to the driver to
implement (it may copy or swap depending on what it feels like doing), but
assuming it swaps, we render to backbuffer then zero-copies to display. if
you have enough extensions in egl/glx we can even do partial buffer renders to
only render the areas that need updating. same with wayland as a display
target... etc.

so no. copies have nothing to do with a scene graph. :)

> - copying is avoided
> - frame drawing is merged with scanning. That is, one could read data 

this is basically impossible. it requires your rendering be AT LEAST as fast as
scanout requires. as scanout is (in most cases) fixed, you have to scan out a
line in an exact given timeframe, and that is unfortunately not possible to do
with rendering ad time to render will depend on complexity of operations. so
basically this is a "pie in the sky" idea that unless you have a rediculous
amount of rendering grunt vs scanout timing requirements... is not going to
happen.

> and modify it just before it is to be scanned and sent to display. That 
> way, data read is in the cache and can be read from there by picture 
> generating circuitry. It also changes the way primitives are drawn - 
> scanline by scanline.
> 
> As I understand, under Wayland there is a way to work with a window 
> frame without it being copied to main picture frame.
> 
> 
> 
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website, sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for all
> things parallel software development, from weekly thought leadership blogs to
> news, videos, case studies, tutorials and more. Take a look and join the 
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> 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


------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to