JDK-8098082 : Use scaled kernel to improve DropShadow performance for node scale factors < 1
  • Type: Enhancement
  • Component: javafx
  • Sub-Component: graphics
  • Affected Version: fx1.0
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2009-01-08
  • Updated: 2015-06-12
  • Resolved: 2014-06-18
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8
8u20Resolved
Related Reports
Relates :  
Description
See first comment here:
http://weblogs.java.net/blog/campbell/archive/2009/01/effects_in_java_2.html#comments

If a node has a DropShadow (or similar Gaussian-based) effect applied to it, and it is being transformed with scale factors less than 1, it seems we should be able to scale the radius of the kernel accordingly and apply the effect to the downscaled representation.  This should be more optimal than the current approach where we'd first render the node in user space, filter it to produce a shadow, and then downscale the resulting shadow image.

For example, suppose a node that's 1000x1000 in user space, with a DropShadow.radius of 10, and scaleX/scaleY=0.1.  We should be able to use the vector-downscaled 100x100 representation of the node, and a DropShadow.radius of 1 (no raster scaling of the shadow image required).


Comments
This was essentially the same issue as RT-13275, though the latter bug was complaining that not enough resolution would be used when the scene is scaled up and this bug is complaining that too much unnecessary resolution is used for tiny outputs, but the fix was the same - to perform the blurs and shadows relative to the scale of the current scene. I set the Fix Version to 8u20 because RT-13275 was integrated in that release, but this bug was not independently "fixed".
18-06-2014

Better handling of transforms and radii was integrated while fixing RT-13275.
18-06-2014