Re: [fxtf-drafts] [filter-effects] Clarify "smoothing technique" for feSpotLight's limitingConeAngle

I tried an adaption from @smfr's original version:

<svg width="500px" height="610px" xmlns="">
    <filter id="filter" filterUnits="objectBoundingBox">
        <feDiffuseLighting lighting-color="rgb(0, 255, 0)" x="-120" y="85">
            <feSpotLight x="-10" y="-20" z="300" pointsAtX="180" pointsAtY="220" pointsAtZ="50" limitingConeAngle="12" />
<rect x="110" y="150" width="450" height="320" fill="none" filter="url(#filter)"/>

Adobe Photoshop:
<img width="627" alt="screen shot 2018-01-05 at 08 32 37" src="">

<img width="370" alt="screen shot 2018-01-05 at 08 32 58" src="">

<img width="494" alt="screen shot 2018-01-05 at 08 33 15" src="">

<img width="370" alt="screen shot 2018-01-05 at 08 34 00" src="">

* Chrome needed `<feFlood/>` to work (should not be required).
* Adobe Photoshop/Illustrator apply an offset which is likely a result of the unclear sub region spec text from SVG 1.1.
* Safari's scale factor is off. (There is an offset too for `filterUnits="userSpaceOnUse"`.)

I still have the assumption that Safari and Chrome draw the lighting in low resolution, upscale and apply a bilinear interpolation filter while Adobe Photoshop/Illustrator and Firefox somehow operate on the actual filter space. But this needs more input from implementers.

GitHub Notification of comment by dirkschulze
Please view or discuss this issue at using your GitHub account

Received on Friday, 5 January 2018 07:40:29 UTC