On Thu, 28 Aug 2008, Jose Gonzalez wrote:

>  Toma wrote:
>
>> I think the most recent patches for gradients have totally destroyed
>> all gradients in E. Poor lil Edjy is ruined and so is the Gradient
>> wallpaper selector and all the things associated with that.
>>
>>
>  Attached (I hope) is a patch to fix those 'old' grads.. they should be 
> back,
> for now. :)
>
>  The patch contains some further improvements on the new grads, and the 
> start
> of some new things to come for evas, so let me briefly go over some of them 
> here.
>
> 1. The start of adding 'fill-transforms' and 'fill-spread' modes to evas 
> image
> objects. I've added the api and implemented the basic canvas level stuff. 
> Here
> are the api functions for that (set ones only here), just like the grad2 
> ones:
>
> EAPI void evas_object_image_fill_transform_set(Evas_Object *obj, 
> Evas_Transform *t);
> EAPI void evas_object_image_fill_spread_set(Evas_Object *obj, int tile_mode);
>
>  Hopefully by sometime next week I'll have a chance to finish off the 
> software
> engines implementation of this.
>
>  The semantics of the fill-transform is simple: First, border-scale the 
> image
> to the current fill size, then apply the combined transform of the current 
> fill-
> transform and the translation to the current fill origin, where the 
> translation
> to the fill origin is done first (note though that transforms are really used
> as the inverse transformations of what one wants, so the given fill 
> translation
> is composed on the left with the given fill-transform). All fill-transforms 
> are
> taken relative to the image object's top-left as the coordinate system 
> origin,
> of course.
>
>  Shortly after this is done, I'll add the basics of stroke/fill texturing of
> 'shape' objects with images and grad2s. Again, as before, I'll do a sample
> software implementation for (rounded) rects and for lines (with caps).
>
>  This is great opportunity for those who are evas engineers to start 
> thinking/
> working on 'native' implementations for their engine of interest -- I can't 
> do
> *all* engines in x amount of time.. and while a simple mechanism to 
> implicitly
> 'fall-back' to software easily would be nice, that's not quite available 
> right
> now and in any case the point of much of this is to have as 'native' versions
> of things as much as possible.
>
>
> 2. I've also added some api functions for working with transforms.. these 
> will
> grow over time, but the given ones are all that's likely needed right now.
> They are:
>
> EAPI void evas_transform_identity_set(Evas_Transform *t);
> EAPI void evas_transform_rotate(double angle, Evas_Transform *t);
> EAPI void evas_transform_translate(float dx, float dy, Evas_Transform *t);
> EAPI void evas_transform_scale(float sx, float sy, Evas_Transform *t);
> EAPI void evas_transform_shear(float sh, float sv, Evas_Transform *t);
> EAPI void evas_transform_compose(Evas_Transform *l, Evas_Transform *t);
>
>  The semantics for these is described in comments above their declaration in
> Evas.h, but basically (except for the first one which sets a transform to the
> identity one), they *left-multiply* the given transform t by a suitable 
> transform
> obtained from the input data (eg. by a translation by some dx,dy, or by a 
> rotation
> by some angle, etc). These are implemented in a new "evas_transform.c" file 
> which
> I've attached, and is to go into the evas 'canvas' dir (added to Makefile.am 
> there).
>
>     Any comments, suggestions, or help with implementing things for the 
> various
> engines, are highly welcome.

I've already talked about that with my student who works on the Direct3D 
engine, and he says that using the pixels shaders for that engine is not 
really difficult. I'll tell him to participate to the discussion

Vincent

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to