W3C home > Mailing lists > Public > public-fx@w3.org > April to June 2014

Re: [compositing-1] please move non-separable effects to Level 2

From: Dean Jackson <dino@apple.com>
Date: Fri, 18 Apr 2014 23:09:08 -0700
Cc: Rik Cabanier <cabanier@gmail.com>, FX <public-fx@w3.org>
Message-id: <808B9E2D-8E34-4DBE-951C-F5246C31B12C@apple.com>
To: robert@ocallahan.org

On 18 Apr 2014, at 10:45 pm, Robert O'Callahan <robert@ocallahan.org> wrote:

> On Sat, Apr 19, 2014 at 5:38 PM, Dean Jackson <dino@apple.com> wrote:
> We support them in software mode too, just not in compositing mode. Since we donít want to have blending disappear if an element becomes composited (99.9% of developers would not be able to explain all the cases in which this could happen), weíd only ship an implementation that supports them everywhere.
> 
> In Gecko, blending doesn't disappear, instead we prevent the content from being offloaded to the compositor. So we support them everywhere, but they cause performance degradation in some cases.

Sometimes that performance degradation might be unacceptable to our users. That is, we might be penalising existing features (such as video playback) because a new feature comes along, even when it has not yet demonstrated its usefulness.

> I'll note that Safari 6 release notes claim support for SVG filters. I'm pretty sure you can implement all the blend modes in terms of SVG filters. So either Webkit's SVG filter support is partial (in which case partial support for mix-blend-mode should be OK too right?) or whatever implementation tradeoffs you made for SVG filters you're declining to make for mix-blend-mode (which I think is not accurately described as "can't implementĒ).

Thatís right.

Iíd also say that people donít use SVG filters on the Web because they are horribly slow. Providing full hardware acceleration for them is possible, but not easy. Meanwhile we see people use the shorthand filters exactly because they are fast.

So yeah, we donít want to add things to WebKit until we know we can make them fast.

Some more background on the non-separable modes:

- Now that Rik has clarified that they are supported in Adobe products, itís worth noting that Photoshop and Illustrator are not interactive Web content that has to run well on a range of devices.

- Non-separable modes are not supported by default in OpenGL (glBlendFunc). There are some extensions available on some hardware to expose them, but these are recent proposals (see [1]). Otherwise youíre going to have to do color format conversion in and out.

Anyway, I think weíve gone as far as we can with this discussion. Iím going to add the prefix back in WebKit while the spec includes those modes and we donít support them.

[1] http://www.slideshare.net/Mark_Kilgard/blend-modes-for-opengl

Dean


Received on Saturday, 19 April 2014 06:09:41 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:49:49 UTC