[HN Gopher] Reinventing Feathering for the Vectorian Era
___________________________________________________________________
Reinventing Feathering for the Vectorian Era
Author : interpol_p
Score : 67 points
Date : 2025-04-04 01:13 UTC (3 days ago)
(HTM) web link (rive.app)
(TXT) w3m dump (rive.app)
| cjbgkagh wrote:
| The 2D Gaussian blur is separable into 2 1D convolutions which is
| much faster than the 2D version so less of a performance issue.
| tczMUFlmoNk wrote:
| Not just that, but two 1D _iterated box blurs_ , requiring an
| amount of work per pixel that is constant with respect to the
| blur radius--as opposed to quadratic for the naive convolution,
| or linear for the 2D-to-1D transformation with a full Gaussian
| kernel.
|
| http://elynxsdk.free.fr/ext-docs/Blur/Fast_box_blur.pdf
| cjbgkagh wrote:
| Neat didn't know that.
| ajb wrote:
| Not completely buying this. He's claiming that it's better to do
| vector based feathering, but it's not at all clear that his
| approach isn't just as computationally expensive, or more.
| Filters do require a lot of calculations, but they are
| embarrassingly parallel and also you get help from the
| Convolution Theorem.
| The5thElephant wrote:
| Looking at the performance it's quite clearly much faster than
| equivalent effects done in traditional web browser rendering or
| in design tools.
| zokier wrote:
| I'm confused, can't you accomplish the same effect with simple
| gradient (+ offset)?
| tobr wrote:
| What do you mean with a "simple" gradient? The difficult part
| is that it has to follow not just the outline of the shape, but
| also the average color of the shape around a certain point.
| That must get very tricky with arbitrary shapes.
| tobr wrote:
| Right about when I'd expect it to get into the interesting
| technical details, the article pivots to marketing fluff. Hoping
| for a follow-up that dives in.
| rikroots wrote:
| You can achieve a gaussian blur effect using an infinite impulse
| response thing[1]. Some very clever people at IBM came up with
| the idea, and some other very clever people translated that code
| to Javascript and stuck it on GitHub for the rest of the world to
| use[2].
|
| [1] - https://en.wikipedia.org/wiki/Infinite_impulse_response
|
| [2] - https://github.com/nodeca/glur
| B1FF_PSUVM wrote:
| I'm a bad person who read too many old comics - I thought this
| was a V _i_ ctorian history snippet about tar-less "tarring &
| feathering", perhaps with honey for a gourmet twist ...
___________________________________________________________________
(page generated 2025-04-07 23:02 UTC)