W3C home > Mailing lists > Public > www-svg@w3.org > September 2012

Re: Perlin and simplex noise

From: Dirk Schulze <dschulze@adobe.com>
Date: Mon, 3 Sep 2012 12:26:41 -0700
To: "Tab Atkins Jr." <jackalmage@gmail.com>
CC: Erik Dahlstrom <ed@opera.com>, David Sheets <kosmo.zb@gmail.com>, "www-svg@w3.org" <www-svg@w3.org>, "public-fx@w3.org" <public-fx@w3.org>
Message-ID: <011264DF-793D-48AE-A9C6-FBA702DC6DD8@adobe.com>

On Sep 3, 2012, at 11:58 AM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:

> On Mon, Sep 3, 2012 at 7:51 AM, Dirk Schulze <dschulze@adobe.com> wrote:
>> On Sep 3, 2012, at 1:03 AM, Erik Dahlstrom <ed@opera.com> wrote:
>>> By not adding a CSS shorthand and a corresponding filter primitive element
>>> we're raising the bar for usage (and requiring every author that wants to
>>> use noise generators to copy these shaders), but you're right that it's
>>> possible to implement this as custom shaders. It's just nicer if this is
>>> part of the required functionality, as is already the case with the
>>> classical perlin noise algorithm in SVG 1.1.
>> 
>> Actually, what is the problem of copy pasting shaders or use generators? I think this is more helpful then introducing yet another filter primitive. We already have enough in my eyes. Introducing more makes it harder to maintain those - from the spec and the implementor side. I have nothing against regular used short hands, but another noise filter does not really fit into this concept in my eyes.
> 
> The problem is that it's much more difficult to use than a simple
> function.  Noise is used quite a lot in webpages, but right now it's
> always done by downloading a noise PNG or whatever.  Making noise
> available as a primitive would be very useful!
Again, you just need the shader, all parameters can be passed into the primitive. So actually I don't see the benefit in comparison to a shader. And I am not talking of a PNG or any other rasterized image. It can even be used with the current shorthands:

filter: custom(none url(trubulenceShader.fs), baseFrequency vec2(1, 1), numOctaves 1, seed 0, stirchTiles true, type 0);

could be an example for a feTurbulence shader.

Greetings,
Dirk

> 
> ~TJ
Received on Monday, 3 September 2012 19:27:17 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 15:54:52 GMT