Light diffusion in Inkscape


For a little project of mine, I am working on creating a resource pack similar to the package found here. Essentially it is a pack of letters which have light bulbs to light the text. You can see an example below.

Large capital A

As you can see in this example the light diffuses around each light bulb to make the effect of the light illuminating the rest of the A. My question is what is the best way to create a similar light diffusion effect in Inkscape?

8/20/2016 8:06:00 AM

Accepted Answer

First off: Beware that Inkscape is for vector illustrations, so the kind of image effects you're asking for are not Inkscape's strongest suit... The result you will get with programs like Inkscape is bound to look "flatter" and less realistic than a full-blown light simulation a.k.a. 3D rendering / ray tracing. If you'd rather go in that direction, check out Blender and YafaRay.

Having said that, here's how I would go about imitating the effect in Inkscape:

There are two components to each light bulb: The body of the bulb and the glow around it.

1. The Body

  • Use an arbitrary number of circles, some with a solid fill, some with just a stroke and partial outline and some with a gradient fill. Pick the colors and gradients from the original image. This is an artistic process, so there is no right or wrong. Continue/iterate until you have sufficient detail and a "cartoonish" copy of the original bulb body.

  • Once you're satisfied, convert all stroke objects to paths. Then select each object and make the fill blurry (use the slider right beneath the fill color). I gave each object a somewhat different blur between 3% and 10%. This will take away the hard edges and reduce the "cartoonish" look.

  • A single bulb could end up looking like this:

2. The Glow

There are several filters that sound like they could do the trick. Specifically, "Filters" > "Shadows and Glows" > "Cutout Glow", "Dark And Glow" and "Drop Shadow" (with a colored shadow) may seem like good candidates.

However, when you actually apply these effects, none of them give you the desired result. To see what I mean, make a filled circle that is larger than your bulb body, pick an orange glow color from the original image and apply each effect.

So instead of using pre-configured filters, I ended up with the following workflow:

  • Superimpose one or several circles until they align nicely with the glow in the original image. Merge the circles with "Path" > "Union". Note that this shape can (but doesn't have to) coincide with light emitted by the bulb.

  • Now pick a suitable color for the newly created shape (some shade of orange from the original). If you want, apply a circular gradient that goes from a more yellowish orange on the inside to a darker one on the outside. Then blur the fill (e.g. 8%) and make the shape transparent (e.g. 50%).

3. Putting it Together

  • Produce more bulb bodies. If you want the end result to look good, you should take the time to model at least 3 or 4 distinct bulb bodies, but for this example we'll just duplicate and rotate the bodies.

  • Place one glow object underneath each bulb. Scale each glow object and adjust its transparency so that they're all somewhat different. If you want, add a dark background (like the one in the original) to help you assess whether you're close to the original effect.

In the original there is a distinct pattern visible amidst the glow and all across the letter. IMHO this is supposed to indicate either a) a coarse wood texture of the letter body or b) some sort of smoke / Moiré / lens flare pattern. Either way it looks cool, so here's a suggestion on how to possibly achieve this effect:

  • Use the calligraphic brush to draw some wavy white strokes across your letter. They should follow a similar pattern as the lines in the original. Then choose a white fill, low opacity (say 10%) and blur the fill (e.g. 3%). Manually draw/adjust these lines until you're satisfied.

Now obviously, there are still a number of elements missing, most notably the extruded aluminum / glass frame of the letter. Since you asked about the light diffusion effect, we're not going to deal with that here. However, I hope it has become clear how the basic effect can be achieved with simple shapes, fills, opacity and - most importantly - blur.

A final remark: The original image certainly looks very polished, so don't be surprised if you have to put quite a bit of effort into obtaining a similar result. I think it requires either a lot of manual illustration and refinement or some advanced 3D modelling / rendering skills to achieve an outcome this polished.

8/20/2016 3:04:00 PM