Freynirks / Glassify

v2.21.0 · Blender 5.2+

Glassify

Glassify is a Blender addon that adds a compositor-based glass-distortion effect to any render — frosted bands, rain-streaked panels, beveled tiles, and more — with a camera-space Empty controlling exactly where the image stays clean. No materials, no shaders, no manual node setup.

Important: the mask projects the Empty's 3D position onto the 2D frame through the scene's active camera. Always keep a camera assigned — the panel warns if one is missing.
▷ Hero render · shot through glass Pending a real showcase render.

Key features

Blender compatibility

Requires Blender 5.2.0 or newer — Glassify is built on Blender 5.x's unified compositor node system (CompositorNodeGroup, scene.compositing_node_group), not the older pre-5.0 compositor. Unlike Sketch Render Studio, Glassify does not support Blender versions before 5.2.

System requirements

Blender5.2.0 or newer — requires the unified compositor node system
Render engineAny — EEVEE or Cycles (compositor-based, engine-agnostic)
Scene cameraRequired — the mask projects the Empty's 3D position onto the frame through the active camera
CategoryCompositing

Installation

  1. Download the Glassify .zip file.
  2. In Blender: Edit > Preferences > Add-ons.
  3. Click Install from Disk and select the downloaded .zip.
  4. Enable the checkbox next to Glassify in the add-ons list.
  5. Open any 3D Viewport, press N if the sidebar isn't already open, and select the Glassify tab.
Important: keep the downloaded filename intact — no renaming, no extra characters — before installing. A modified filename can make Blender fail silently on install.

User interface

Accessing the panel

Open a 3D Viewport, press N if the sidebar isn't already open, and select the Glassify tab. If no effect has been added to the current scene yet, the panel shows a single button: Add Glassify Effect. The header shows the current version number and a “?” button that opens the addon's homepage.

▷ Screenshot · Glassify panel Full sidebar panel with pattern picker, mask, and displacement sections open.

Panel layout

Top to bottom, the panel is organized as:

Full control reference

Each number corresponds to a control in the panel:

#ControlSectionDescription
1Pattern thumbnail pickerPattern pickerVisual grid to choose one of the 9 glass pattern styles; Prev/Next arrows cycle through them in a fixed order.
2Line CountPattern ShapeDensity/scale of the pattern's repeating lines, rings, tiles, or dots. Not shown for Blur Direccional.
3SpacingPattern ShapeWidth of the flat gap between repeats (tiles, rings, dots). Square, Circular, Dots, Hexagonal only.
4Diagonal DirectionPattern ShapeLeft (/) or Right (\) lean of the bands. Diagonal only.
5Black Point / White PointPattern ShapeLevels-style brightness remap of the bundled rain photo before it drives the effect. Rain only.
6Relief BoostPattern ShapeStrength of the fake bump-map shading sampled from the rain photo's own local gradient. Rain only.
7Rain Image pickerPattern ShapeChoose 1 of 4 bundled rain-on-glass reference photos (thumbnail filmstrip). Rain only.
8Relief Strength / Light X / Light YPattern ShapeFake normal-map emboss intensity and light direction. Square, Hexagonal, Rain only.
9Grout DarknessPattern ShapeForces the gap between repeats to read as a dark seam, regardless of what's behind the glass. Square, Circular, Dots, Hexagonal, Rain.
10Reset to Defaults—Restores the currently selected pattern's built-in tuned values only — the other 8 patterns are untouched.
11Distortion / Detail / Detail Scale / Detail RoughnessPattern DetailOrganic wave-texture wobble controls. Horizontal, Vertical, Diagonal, Circular.
12Dot Size / Min Dot Radius / Edge SoftnessPattern DetailFine shape-tuning for individual dot radius/crispness. Dots only.
13Mask Type (Círculo / Rectángulo)MaskSwitches between a soft elliptical falloff mask and a hard-edged rectangular isolation window.
14EmptyMaskWhich 3D Empty object drives the mask. Managed automatically, but can be repointed manually.
15Mask Radius (Circle) / Mask Width-Height (Rectangle)MaskDirectly tied to the mask Empty's Scale — grab and scale the Empty in the viewport, or type exact values here.
16Mask RotationMaskThe Empty's Z-axis rotation; spins the mask shape (ellipse or box) to any angle.
17Mask Start / Mask EndMaskFalloff ramp stops controlling how gradually the effect fades in. Circle only — Rectangle's edge is always 100% hard.
18Mask StrengthMaskHow strongly the Relief emboss shading is suppressed inside the mask's clean zone. Square, Hexagonal, Rain only.
19Mode (Displace / Scale)DisplacementWhether the pattern warps the image via pixel displacement or via image scaling.
20Displace Axis / Scale AxisDisplacementWhich screen axis (X, Y, or Both) the warp is applied along.
21Distortion Amount / Edge Distortion AmountDisplacementOverall warp strength, and extra warp concentrated at the pattern's edges.
22Type (Gaussian / Directional Blur)BlurWhich blur algorithm softens the distorted image.
23AmountBlurBlur strength. For Directional Blur, this used to visually cap out at 1.0 — see Unbounded Directional Blur below, this is no longer a hard ceiling.
24Direction / RotationBlurAngle controls for Directional Blur's streak orientation.
25Chromatic Aberration + DispersionBlurOn/off toggle plus intensity for color-fringing. Turning the checkbox off remembers the last Dispersion amount, so re-enabling restores it exactly.
26Luminance / ChromaSensor NoiseFilm-grain intensity — brightness noise and color noise respectively. Fully excluded from the mask's clean zone.
27AnimatedSensor NoiseWhether the grain pattern changes per frame, or stays static.
28Remove Effect—Deletes the compositor setup for the current scene only (confirmation prompt). Leaves the addon, the mask Empties, and other scenes untouched.

Important notes

  • The mask projects the Empty's 3D position onto the 2D frame through the scene's active camera — always keep a camera assigned; the panel warns if one is missing.
  • Circle and Rectangle each use their own dedicated Empty object — “Glassify Mask” (a sphere) for Circle, and “Glassify Mask Rect” (a cube) for Rectangle — so resizing one never disturbs the other's saved size. The Rectangle cube is created automatically the first time any pattern is switched to Rectangle mode.
  • For both mask types, the Empty's Scale directly is the mask's size — there's no separate hidden size property. Because it's a real object, it can be keyframed, letting the clean zone track a moving subject across an animation.
  • Every one of the 9 patterns remembers its own complete configuration — Displacement, Blur, Mask type/size/rotation, Relief, Sensor Noise, and the Chromatic Aberration toggle. “Reset to Defaults” only ever affects the currently-selected pattern.
  • “Reset to Defaults” always reverts the Mask Type back to Circle, even for a pattern that was using Rectangle — Rectangle is treated as an intentional, per-pattern opt-in, never a canned default.
  • Removing the effect from a scene does not delete the mask Empties or the shared node groups bundled with the addon — they're reused if the effect is added again.
  • If a mask Empty is accidentally deleted, the panel shows a warning — assign any Empty object in the Empty field to recover, or re-add the effect.

Feature deep-dives

The mask system — Circle vs. Rectangle

Glassify's mask defines where the glass effect is absent (a clean, undistorted zone) versus where it's fully applied. There are two shapes:

Both use the exact same interaction model: grab the mask's Empty in the viewport and move/rotate/scale it. Scale is the size control for both (radius for Circle, width/height for Rectangle) — no separate numeric-only size property exists anywhere else.

Per-pattern independent memory

Every one of the 9 patterns keeps a fully separate, complete copy of every tunable value — not just its own shape controls, but Displacement, Blur, Mask (type, size, rotation, falloff), Relief, Sensor Noise, and the Chromatic Aberration toggle. You can spend time dialing in a very specific look on, say, Square, switch to Circular to try something else entirely, and come back to Square later to find every slider exactly where you left it. Nothing is shared or overwritten across patterns except by an explicit “Reset to Defaults” on that one pattern.

Sensor noise isolation

Film grain (Luminance and Chroma noise) is fully gated by the same mask signal that isolates the glass distortion itself — so the mask's clean zone is not just distortion-free, it's also completely grain-free, for both Circle and Rectangle. This keeps an isolated subject looking genuinely clean rather than sharp-but-grainy.

Effectively unbounded directional blur

Blender's own Directional Blur filter node has a built-in Amount range hard-limited to 0–1 by Blender itself (it's a Factor-type input, always clamped to that range, addon-independent). Glassify works around this: once Amount is pushed past 1.0, the addon layers an additional, genuinely unbounded blur pass on top, scaled to match — so raising Amount keeps visibly increasing the blur with no ceiling, instead of silently doing nothing past 1.0 the way a plain Directional Blur node would. Amounts at or below 1.0 behave exactly like a native Directional Blur, unchanged.

Relief / emboss shading

For patterns whose geometry can expose a genuine per-pixel bevel gradient (Square's tile grid, Hexagonal's honeycomb lattice, Rain's per-streak shading), an optional fake normal-map “Relief” layer adds directional highlight/shadow shading for a non-flat, embossed feel — controlled by Relief Strength and a Relief Light X / Light Y direction. Circular and Dots reuse the same underlying node purely for its Grout Darkness control (forcing the gap between repeats to read as a dark seam), without any actual emboss shading, since their pattern geometry has no bevel data to read.

Patterns

Each pattern automatically configures displacement, blur, mask, and (where applicable) relief shading to achieve a specific look. Jump straight to any of them:

Horizontal

Glassify Horizontal pattern

A classic frosted-glass look: continuous horizontal bands of distortion sweep across the frame, each with a soft organic wobble rather than a razor-straight edge.

Vertical

Glassify Vertical pattern

The same band style as Horizontal, rotated 90° — vertical bands with a rougher, more irregular edge for a slightly different organic texture.

Diagonal

Glassify Diagonal pattern

Bands lean diagonally across the frame instead of running horizontally or vertically, with a switchable lean direction — a genuinely different geometry from simply rotating Horizontal.

Circular

Glassify Circular pattern

Concentric rings radiate outward from a single center point, like ripples in glass — a genuinely different pattern from Dots (which tiles many small individual circles), built from its own dedicated ring geometry.

Dots

Glassify Dots pattern

A repeating grid of small circular glass dots — a halftone/polka-dot look, with crisp, flat-faced dots and a short soft transition only at each dot's outer rim.

Square

Glassify Square pattern

A beveled square-tile pattern with crisp, defined grout lines between tiles and a genuine embossed, non-flat feel via the Relief layer — the most “physical glass block” of the set.

Blur Direccional

Glassify Blur Direccional pattern

No geometric pattern at all — just a soft, clearly-oriented directional blur streak. The simplest preset, ideal for a subtle motion/glass-smear feel without any repeating lines.

Hexagonal

Glassify Hexagonal pattern

A honeycomb tile pattern with a softer, more diffuse glass look than Square — hex cells read as a continuous, smoothly-faceted surface (no grout seam by default) with a strong directional highlight across each facet.

Rain (Lluvia)

Glassify Rain pattern

The most photoreal pattern — instead of a procedural texture, it samples a real black-and-white rain-on-glass reference photo (one of 4 bundled options, switchable from a thumbnail picker), giving genuinely organic droplet and rivulet shapes with real per-pixel highlight shading.

Troubleshooting

The mask doesn't seem to do anything — distortion covers the whole frame

Make sure a camera is assigned to the scene (Scene Properties, or check the panel's own warning banner) — the mask's 3D-to-2D projection requires an active camera to work at all.

I accidentally deleted my mask Empty

The panel shows “Mask empty was deleted — pick a new Empty below.” Assign any Empty object in the Empty field to recover, or use Add Glassify Effect again if the whole setup needs rebuilding.

Moving or rotating my Rectangle mask does nothing (fixed in v2.18+)

Update to the latest version — earlier builds had a node-graph staleness bug specific to the mask-type swap.

The Rectangle mask still shows visible film grain inside its clean area (fixed in v2.20+)

Update to the latest version.

The Blur Amount slider seems to stop having any effect above a certain point (Directional Blur only) (fixed in v2.21+)

Update to the latest version — Amount now keeps increasing blur intensity well past 1.0.

Switching patterns changed values I had tuned on a different preset

This should never happen — every pattern holds fully independent state. If it does, the .blend file likely predates the per-pattern-state system and should be re-saved after visiting each pattern once.

Support

For questions, bug reports, or suggestions, reach out through our support channel.

Credits

Author: Toquica