Hi Gustavo,

2014-02-06 Gustavo Sverzut Barbieri <barbi...@gmail.com>:

> On Thu, Feb 6, 2014 at 4:29 AM, Jean-Philippe André <j...@videolan.org>
> wrote:
> > Hello all,
> >
> >
> > As some of you have heard already, I've been working for the past few
> > months on an advanced font effects module for Evas. The main idea is to
> > integrate features like in Gimp in the Evas rendering engine itself, in
> > order to have some cool text effects.
> >
> > I'd love to integrate this work within EFL 1.9 (the merge window is still
> > open :) ), but still leave it marked as experimental because it's...
> well,
> > not perfect quite yet.
> >
> > Here's what's working:
> > - Software rendering
> > - Basic OpenGL (integration through full software rendering and pushing a
> > texture)
> > - Basic Edje integration (the best for quick testing)
> > - Text object
> >
> > My work has been public since I started, in my dev branch
> > (devs/jpeg/fonteffects), but I guess no one really had a look at it yet
> :)
> >
> >
> > Fundamentally, it's a whole new part of Evas, called Evas_Filter (in
> > evas/filters) and almost nothing in Evas has been changed otherwise. We
> add
> > some basic support for Alpha images (1 byte per pixel, instead of the
> usual
> > RGBA).
> >
> >
> > The concept is to apply a series of operations to Alpha/RGBA buffers, and
> > blend the final result on screen. These buffers can be thought of as a
> > series of layers and the operations as filters (in the Gimp terminology).
> > So while the target is text for now, the whole concept has pretty much
> > nothing to do with text, really, just basic image processing :)
> >
> > Right now, here are the available filters:
> > - Blend
> > - Mask (same as blend, but with 2 input images and an output)
> > - Bump (using a bump map and various colors)
> > - Displacement (using a specific displacement map image format)
> > - Transform (vertical flip only for now)
> > - Blur
> > - Curve (apply a color curve to any color channel)
> >
> > Using proxy source images (any object actually), we can apply textures to
> > the text. And if the texture is, say, an animated Gif of a fire, then the
> > text will be on fire as well.
>
> excellent, after year of hope this finally happened :-) I guess you
> know we had an almost working implementation that later got removed,
> I'm wishing you the best luck to get this properly working... changing
> such a huge beast as Evas is a big can of worms. And those are the
> reasons I'll just hope and will not even look at the code :-D
>

Actually, I didn't know about that.
As for the can of worms, I tried to make those filters as separate as
possible from the rest of Evas, while still being in the very middle of it.


>
> > Finally, I'm introducing a new script language (yeah, sorry), that's
> pretty
> > simple, to describe the various buffers and commands to apply
> sequentially.
> > For example, to apply a simple dark blue drop shadow, one could do:
> >
> > blur(ox=4, oy=6, dx=10, dy=10, color=darkblue);
> > blend(color=white);
>
> I didn't look in depth, but would be nice to use the same as
> http://www.w3.org/TR/filter-effects/ so the language is known to more
> people.
>
>

Just FYI, I had a quick look (last week, before the freeze) at your link.
I found that spec quite interesting, and yes, it's pretty close to what
I've done.

But now it's too late to change the language for an XML thing. Anyways, I'd
also argue that a Lua-like language is more consistent with our future
plans (Bob, etc...), than XML stuff :)

I'll have a closer look at the effects proposed in that w3c draft, see what
cool ideas can come out of that.

But I don't want to start implementing support for this exact language...
because we'll never have full support :( I could instead implement a script
to convert from w3c to evas filters, maybe. Just like I was thinking of
doing for simpler CSS (text-shadow...), so that designers have an easy way
to learn and write stuff.

Btw I don't even have a name for that language/module :)



>
> > A test app with examples is available in my repo, at:
> > https://git.enlightenment.org/devs/jpeg/font_effect_ui.git/
> >
> > More examples will follow.
> > Also, images & screenshots should follow.
> >
> >
> > Right now, I am working (hard :P) at fixing a few remaining issues with
> > proxy rendering (crashes, dangling objects, you name it...) and I'll do a
> > final rebase of my work over master before the weekend. I removed my
> > changes in Textblock as they introduce way too many issues, especially
> with
> > the recent optimizations.
> >
> >
> > Soon, all your text will be on fire :-)
>
>
> excellent, and then I can have performance in my apps AND remove my
> custom hacks to provide those... nowadays getting pixels and doing it
> in sw sucks ;-)
>

Well, I'll have to work much harder on the performance optimizations then :)

Best regards,

-- 
Jean-Philippe André
------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to