Rendering of 'feSpecularLighting' in 0.47 differs from 0.46

Bug #484507 reported by Hadmut Danisch
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Confirmed
Medium
Unassigned

Bug Description

Hi,

after upgrading from Ubuntu 9.04 with inkscape 0.46-5ubuntu4 to Ubuntu 9.10 with inkscape 0.47~pre4-0ubuntu1, an important function in inkscape is broken.

With the older version the attached svg produced the expected result a threedimensional looking box with shadown. With the older version, the same svg produces a box that looks darker and flat. I'll attach the svg and both outputs.

Revision history for this message
Hadmut Danisch (hadmut) wrote :
Revision history for this message
Hadmut Danisch (hadmut) wrote :
Revision history for this message
Hadmut Danisch (hadmut) wrote :
su_v (suv-lp)
tags: added: filters-svg
Revision history for this message
su_v (suv-lp) wrote :

reproduced with Inkscape 0.46-2 and Inkscape 0.46+devel r22575 on OS X 10.5.8:
the same object with the filter 'glanz3D' is rendered darker in 0.47(pre) than in 0.46.

filter in question:
<filter id="glanz3D" filterUnits="objectBoundingBox" x="-50%" y="-50%" width="200%" height="200%">
  <feGaussianBlur in="SourceAlpha" stdDeviation="4" result="specBlur"/>
  <feSpecularLighting in="specBlur" result="specOut" lighting-color="#bbbbbb" surfaceScale="1" specularConstant="0.5" specularExponent="20">
    <fePointLight x="-5000" y="-10000" z="20000" />

Changed in inkscape:
status: New → Confirmed
Revision history for this message
su_v (suv-lp) wrote :

possibly related to the discussion about "color-interpolation and color-interpolation-filters" in inkscape-devel?
<http://thread.gmane.org/gmane.comp.graphics.inkscape.devel/30566/focus=30571>

Revision history for this message
Hadmut Danisch (hadmut) wrote :

Any estimation when the bug will be fixed?

Revision history for this message
ScislaC (scislac) wrote :

Hadmut,

We really don't ever have estimates of when certain bugs will be fixed unless someone is actively working on them, and no one is working on this one as far as I know.

Revision history for this message
Hadmut Danisch (hadmut) wrote :

:-(

Revision history for this message
jazzynico (jazzynico) wrote :

Also reproduced on Windows XP, Inkscape 0.48 (and working correctly with 0.46).

Changed in inkscape:
importance: Undecided → Medium
tags: added: regression
Revision history for this message
su_v (suv-lp) wrote :

The issue seems to be with the effect of the 'specularConstant' setting for 'feSpecularLighting':
The old filter effect created in 0.46 used '0.5', with 0.47 and later versions the same effect is achieved with '0.9'.

Since other SVG renderers (Squiggle (Batik 1.7), Opera 11.52, Chromium) agree with Inkscape's current rendering, this was possibly an incorrect initial implementation in Inkscape 0.46 (needs verification).

summary: - Filtering broken
+ Rendering of 'feSpecularLighting' in 0.47 differs from 0.46
Revision history for this message
ScislaC (scislac) wrote :

I tried in Inkscape trunk and then in Firefox 25 and a Chrome 33 beta, they render as Inkscape 0.46 used to render it. I'd say the original implementation would be correct.

Revision history for this message
ScislaC (scislac) wrote :

Okay... new comparison with image. Reference info...

Chrome 38 beta
Firefox 32 beta
Ink-old is Hadmut's reference image from 0.46
Ink-new is Hadmut's reference image from 0.47
r13527 is from trunk
r13527a is trunk but with the filter modified as suggested by ~suv

My lesson? Don't eyeball it instead of doing a side-by-side, my bad from the previous comment.

It looks to me like current trunk is even darker than the supposedly "bad" image. After adjusting the filter, it looks closer to how those other mentioned renderers are doing it. So yes, while the newer behavior is more correct, it still not quite right.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.