Hi François,

Thanks for your comments about Inkscape filters feature. I understand your frustration about slowness. Filters remain a very young tool and their rendering could be optimized ; that's only a matter of time I think and there will be some progress with Cairo rendering (most probably in 0.49).

About non wyziwyg the main problem concern chiefly the filters containing one primitive (Convolve matrix) which at the moment remains resolution dependent.

You are not the first one to propose interesting mockups for the filters tool and your one is perhaps more interesting again because it's directly linked with the 3D rendering software world which shares some important primitives with Inkscape filters : Turbulence, Displacement, Phong shading in lightings... Perhaps did you see the following pages already :

http://wiki.inkscape.org/wiki/index.php/Filter_Effects#Mockups_of_Filter_editing_and_related_dialogs

However, some years ago I worked with 3D software like Lightwawe and C4D and despite the two programs have a GUI like yours, they also keep a tree like alternative very similar to Inkscape Filters editor. I think it's very important to give the user the choice of his tool in function of his mind ; this isn't only a matter of learning but it's also a question of personal ability. Aren't we in free software world ?  Thus instead of replacing the existing tool by another one my opinion is that one should develop the kind of tool you want or you need. Inkscape community is open to all proposals and development collaboration !

On the other hand some work is done at the moment in the customizable filters area. There is a blueprint on Launchpad about that : https://blueprints.launchpad.net/inkscape/+spec/custom-predefined-filters  If you compile Inkscape devel you will discover progressively more of them in the Experimental Filters submenu.

Regards,

ivan


De : Teto <teto45@...2519...>
À : inkscape-devel@lists.sourceforge.net
Envoyé le : Dim 19 décembre 2010, 11h 53min 25s
Objet : [Inkscape-devel] A proposal for the filter tool (and the others)

Hi!

    First, I have to say that I do like inkscape, that I use everyday, sometimes just for fun.
    But, like all free softwares, it has few problems. Some are not important, others may become disabling. Obviously filters belong to the second category. Not because there are buggy (they aren't), but because the rendering engine is just too slow,  when you are using few "big" filters in a big picture and you want to export in a big size, it takes centuries. I'm not complaining, I take a coffee during the export, but well... And it has other few problems like "what you see is not really what you get". More than this, useful features are missing: using filter in another filter, disable/mask an effect without remove it, things like that. Again, I'm not complaining, developing a soft like Inkscape is a hard stuff, and you, developers, do a great job.

    First remark: When we watch filter structure closely, it's very similar to "path effects" and even "stroke" or "shape". You have an object that you change with effects: colors, shape, style and so on.

    For fun, again, I use UDK (Unreal Development Kit) to develop games (mostly to understand how they work). I suppose that many people know this kit, if not, search "Epic Unreal Development Kit". In this kit, like all other game development kits, you apply materials to 3D objects, that are basically textures improved with a lot of effects to fake light, glow, deepness, relief and so on. To create these effects, you use a GUI (attached picture) where you start with the 3D object (the big rectangle on the left) and put on it effects, which can be modified by sub-effects, which can be etc. The attached picture is obvious, and shows clearly how it works, I think.

    What do I want to say? I think that many tools/operations of Inkscape can be done via a GUI like this.
- Everything can be a "basic" object: line, stroke, shape, geometric shape, group, clone.
- On these objects you can change 4 things: shape (fill or edge) and color (fill of edge). That's all.
- For the effects available you find all tools available in "filter" or "path effects", like bending, matrix operations, styles...
- So when I want to put a "object on fire" effect on a circle, I click on it, a window like the attached picture is opened, I can see the object "circle" on the left, and few effect already attached, like fill color and the type of the stroke for the edge. I'm choosing the filter "on fire" in the library, and put it. I'm using dashes to tell where it's used, configuring it, closing the GUI, and the effect appears.
- You see also what I mean: With this system you can create you own effects and use them like "basic effect" in other filters (missing feature in the actual filter tool).
- It's the same for the objects themselves. For instance you could have a 'group' with effects (filter, transparency,...) with many sub-objects/shapes with their own effects.
- Many existing GUI/tools in Inkscape could disappear with this one, and changed by "basic effect objects" attached on shapes/strokes: Tools filter, path effect, color, text, transform, tiling, distribute, 'rows and columns'...

    I do know that the work for this is huge (another summer google contest?). You have to start from scratch, basically. And I read somewhere that for futures versions, Inskcape will merge "filter tool" and "path transform tool" in order to unify all this stuff. I agree, it's essential for my point of view, if you want to continue improving your great tool without too much trouble. My idea can be useless, because the concept doesn't fit with the .svg specifications (I'm thinking about colors or edge thickness, for example, that are directly in the object definition, while filters are stored in <svg:defs>). Or compatibility with other softs that reading .svg. Or maybe you don't care. But implement this and many expensive professional vectorial tools will become "old-school" immediately ^^ ...

    Sorry for the length. And sorry if I seemed arrogant or smug, it wasn't my intention, English is not my native language. I just had this idea this morning.

My 2 cents,
François.

PS: About the actual filter tool: Maybe I missed something, but the tool "snapshot picture behind the object and use it" is missing, and could be useful for effects.