Labcraft - Procedural Scientific Glassware Generator For Blender

Pyndax in Presets


Blender extension GPL-2.0-or-later

LabCraft builds seven vessel types at their standard dimensions: Griffin and Berzelius beakers, Erlenmeyer flask, graduated cylinder, test tube, Petri dish, and round-bottom flask. Add LabCraft on any mesh object builds one of them whole: geometry, glass and liquid at the correct IOR, a graduation scale baked for the volume you picked, and a fill you type in millilitres instead of eyeballing. What comes back is a Geometry Nodes modifier and a material stack, both open, and you can take either apart. LabCraft is GPL-2.0-or-later, the same license as Blender itself, and it runs offline with no DRM.

7
vessel types
39
catalog sizes
6
liquid presets
5 mL – 5 L
catalog span
The beauty shot: dark field, five vessels, nested-dielectric optics
Screen recording: Add LabCraft
01

Dimensions from the standards

LabCraft is built for product shots, science explainers, and scientific illustration, where a vessel's dimensions have to be defensible. Beakers use catalog dimensions per ISO 3819, graduated cylinders ISO 4788, and Erlenmeyer flasks DIN ISO 1773. Test tubes, Petri dishes, and round-bottom flasks use the conventional catalog sizes for their type. The catalog spans 5 mL (test tube) to 5 L (Griffin beaker), and a 250 mL Griffin measures what a real one does.

Vessel Sizes Range Fill in mL Printed scale Dimensions from
Griffin beaker 7 50 mL – 5 L yes precise, evenly spaced ISO 3819
Berzelius beaker, tall form 6 50 mL – 2 L yes precise, evenly spaced ISO 3819
Erlenmeyer flask 5 100 mL – 2 L yes coarse, at true nonlinear heights DIN ISO 1773
Graduated cylinder 7 10 mL – 1 L yes precise, evenly spaced ISO 4788
Round-bottom flask 6 50 mL – 2 L no none, as in reality catalog sizes
Test tube 4 5 mL – 50 mL no none, as in reality catalog sizes
Petri dish 4 35 / 60 / 90 / 150 mm no none, as in reality catalog sizes
39 vessels in total 39
The range: 39 vessels across all seven variants
Screen recording: Vessel Type
02

Six liquids from measured optical data

The presets cover water, ethanol, olive oil, blood, copper sulfate, and potassium permanganate. Each one carries its own refractive index (water 1.333, ethanol 1.361, olive oil 1.467, blood 1.378) and a Beer-Lambert absorption coefficient computed from published spectra rather than a picked tint, each at a stated strength: CuSO₄ at 0.25 M, KMnO₄ at about 0.2 mM, whole oxygenated blood at 45 % hematocrit, extra-virgin olive oil, and pure water and ethanol. Color therefore follows path length the way it does in reality: a 5 mL tube of KMnO₄ reads lighter than a 5 L beaker of the same solution. Blood is a dense scattering medium rather than a filter, so it renders through subsurface scattering and comes out deep and dark instead of pink. Refraction goes through the nested-dielectric IOR ratio, which is what keeps the liquid-glass interface clean in Cycles.

Liquid IOR Strength How it reads
Water 1.333 pure clear, faint blue tint
Ethanol 1.361 pure nearly clear
Olive oil 1.467 extra-virgin gold tint, mid absorption
Blood 1.378 whole oxygenated, 45 % hematocrit deep and dark, subsurface scattering
Copper sulfate 1.345 0.25 M vivid blue
Potassium permanganate 1.333 about 0.2 mM deep magenta
What this is not

Absorption is sampled at three wavelengths, one per sRGB primary, so this is an RGB approximation of each spectrum rather than a spectral render. And seeing the liquid through the glass at high transmission needs Cycles, because EEVEE does not sample volume absorption that way.

The six liquid presets through one bore, nothing else varying
03

Three glass finishes

The glass comes as clear borosilicate at n = 1.474, as amber for light-sensitive reagents, and as frosted. All three take the painted labels, and all three carry a micro-imperfection layer you dial with one Glass Cleanliness slider, because spotless glass is what reads as CG.

Screen recording: Materials
Refraction read against a grid of known squares
04

Condensation

One slider takes the glass from a fine misting low down to large drops and the occasional run at the top, and the misting stops at that vessel's own liquid line. Droplets come in a spread of sizes and refract like the little lenses they are. Separate controls set droplet size, beading, runs, 3D droplets, and how milky the film between them is. It works on all seven vessel types, the round flask's bulb and the test tube's rounded foot included.

Screen recording: Surface
Condensation and glass dirt, at macro scale
The same vessel with the garnish switched off
05

The painted label

The graduation marks and the mL numbers are baked onto a per-instance PNG decal and re-baked whenever the volume changes. There is a free text slot for "HCl 5%" or "Sample A" or a brand name, six label fonts (three built-in bitmap weights plus Liberation Sans, Serif, and Mono), and a switch between mL and fl oz. If the scale itself matters to your shot, you can move the ticks to the left rail that real graduated glassware uses, set major and minor tick length and thickness separately, change the text size, show or hide the size-and-field block, and give the paint a raised relief.

Control What you set
Free text slot any string, for example "HCl 5%", "Sample A", or a brand name
Label fonts six: three bitmap weights original to LabCraft, plus Liberation Sans, Serif, and Mono under the OFL
Units mL or fl oz
Tick position standard, or the left rail that real graduated glassware uses
Tick geometry major and minor length and thickness, set separately
Text size adjustable
Size-and-field block shown or hidden
Relief raised paint on the print
Screen recording: Painted Label
The baked print: graduations, size designation, write-on field
The write-on field is editable: three vessels, three strings, nothing else different
06

Type the fill in millilitres instead of eyeballing it

The two beakers, the graduated cylinder, and the Erlenmeyer flask carry a Fill (mL) field. Type 175 and the liquid stands at 175 mL, worked out from that vessel's own inner geometry: analytic cylinder volume for the straight bores, frustum plus neck for the cone. The printed graduation scale is baked from the same model, so the surface lands on the mark that names it rather than near it.

The test tube, the Petri dish, and the round-bottom flask keep a plain 0 to 1 slider and carry no printed scale, which is how they come in reality. The Erlenmeyer's scale is the coarse, approximate kind a real cone flask is stamped with, with the marks at their true nonlinear heights.

Underneath sits Fill Level, a plain 0 to 1 slider, so pouring and filling animate with two keyframes, no drivers and no constraints. The pouring spout is parametric (angle, pull-out, pull-down, arc width, start position), with per-vessel defaults: the two beakers and the graduated cylinder pour, and the rest ship without a spout, the way they come in real life.

Screen recording: Liquid Fill
07

One click builds the studio

Setup Studio Scene puts three-point area lights, emissive softbox cards, a curved sweep backdrop that carries the contact shadow, and a framed hero camera around your vessel, so your first render is a lit shot instead of a starting point. Four environments switch the look from one button each: Clean, Warm, and Dramatic Side-Lit on bundled CC0 HDRIs, plus a file-free procedural gradient. With the rig standing, an environment button re-lights the whole set rather than only the reflections; without the rig, it swaps the environment alone. The camera ships focused on the vessel at f/16, deep enough to hold it sharp front to back while the backdrop falls soft, and the f-stop and a depth-of-field toggle sit in the panel.

A second button applies the render settings Cycles needs for glass: deep transmission bounces, refractive caustics, sampling, and denoise. It asks first, and it leaves your own camera's resolution and framing alone.

Screen recording: Studio & Render
08

Files that keep working

The node group carries a schema version and migrates itself when you open an older file. Duplicating with Shift+D detaches the shared data rather than linking it. If a modifier ever ends up in a broken state, one operator resets it.

09

Also included

  • One stopper shape in four finishes, sized to the beaker's mouth: cork, black rubber, glass, and a white cap. The four differ in material, not in geometry.
  • Lathed quad topology, with a rolled rim, base flare, holding loops at every hard corner, and smooth-by-angle shading.
  • Asset Browser support: one click marks the vessel as an asset, with variant and volume in the metadata and a thumbnail rendered for you.
Screen recording: Mark as Asset
The LabCraft N-panel in a Blender session

10

The add-on never touches the network

No account, no telemetry, no activation, and no DRM. It works on a machine that has never seen the internet. The one thing that does go online is Blender's own extension updater, and only if you choose to add the remote repository.

11

What you get

The add-on as a Blender extension with no dependencies, installed by drag and drop
Nine materials: six liquids and three glass variants
A one-click studio rig plus four environments (three CC0 HDRIs from Poly Haven and one procedural; attribution in CREDITS.txt)
A factory preset per vessel type, and your own setups saved as presets from the panel
Six label fonts: three original bitmap weights, plus Liberation Sans, Serif, and Mono under the OFL
The N-panel UI in the 3D viewport
The user manual as a PDF; the Documentation tab covers install, every panel, and troubleshooting
GPL-2.0-or-later, the same license as Blender itself
Whatever you make with it. The meshes and the renders are yours, commercially, with no attribution asked
12

Engine support and known limitations

Cycles is the engine LabCraft is built for. The IOR, the nested-dielectric liquid, and the caustics all behave there, and photoreal stills are what it is tuned for.

Where EEVEE stops

EEVEE Next is fine for fast viewport work and for the glass on its own. The liquid color in EEVEE comes from a surface tint computed from the same absorption data at a typical 50 mm path. What EEVEE will not do is show the liquid through the glass at high transmission, because it does not sample volume absorption along refracted paths the way Cycles does. That is how EEVEE works rather than a bug in the add-on, and no setting fixes it. Use Cycles for any shot where the liquid has to read through the glass. Geometry, labels, glass, and fill-level animation behave the same in both engines.

The mesh is render-grade: lathed quads at a density chosen for close-up stills. It is not decimated for a game engine and not solidified for 3D printing.

13

Blender versions and updates

LabCraft is kept working on the current Blender LTS release and the current stable release: 5.2 LTS today, the version the test suite runs on. Older Blender versions are not supported.

Every 1.x release is included in the purchase: bug fixes, compatibility with new Blender versions, and new functionality that fits within version 1. Updates arrive inside Blender once Superhive is added as a remote repository. The price rises for new buyers as substantial functionality is added, and a future major version of substantially larger scope may be offered as a separate product, with a discount for owners of version 1.

Requirement Value
Blender 5.2 LTS and newer; 5.2 is the version the test suite runs on
Render engine Cycles for the liquid through the glass; EEVEE Next for viewport work and the glass on its own
Install drag and drop as a Blender extension, no dependencies
Network access none: no account, no telemetry, no activation, no DRM
Code license GPL-2.0-or-later, the same license as Blender itself
Output license yours, commercially, with no attribution asked
Bundled HDRIs three from Poly Haven by Sergej Majboroda, CC0 1.0
Bundled fonts Liberation Sans, Serif, and Mono under the SIL Open Font License 1.1
Updates every 1.x release included, delivered inside Blender
What's new 1.0.1 · 2026-09-21

A maintenance release, free to everyone who owns LabCraft, and it needs Blender 5.2 LTS or newer. What it changes in files you already have is at the end.

Fixed

  • A preset saves the whole vessel: every control the panel shows, the glass, the liquid, and the printed label.
  • A preset you remove stays removed, and saving over one asks before it replaces anything.
  • Every volume button builds the size it names, because the panel now offers a vessel only the sizes it is really made in.
  • The Erlenmeyer prints its whole scale on the side you are looking at, at every size it comes in.
  • A stopper fits the opening it is put on, re-fits after a volume change, and survives Apply Object Scale.
  • Opening a file that holds no LabCraft object changes nothing in it: not its node groups, not its materials, not its render settings.
  • The Fill (mL) slider keeps working when certain other add-ons are installed alongside LabCraft.

Changed

  • The console stays quiet: enabling the add-on and opening a file no longer write roughly eighty lines of internal diagnostics.
  • Blender lists LabCraft's file access when you install it, and nothing leaves your machine.
  • Support is [email protected], and mail to the old address is still read and answered.

Added

  • The purchase terms ship inside the download, beside the license, privacy, and credits files.
  • The manual ends with a version history, so what a release brought is answerable offline.

In files you already have

  • A vessel holding a size it is not made in states what it is actually building.
  • A stopper already in your scene is corrected by clicking its material once more.
  • Erlenmeyer labels are re-printed with shorter tick marks, and on the 1 L and the 2 L the numbers drop one size step.
  • A preset from an older version no longer puts wall and base thickness back over the catalog value.
  • Nothing else in an existing file changes.
14

From the developer

LabCraft is one person's work, and I support it myself. The price buys you the tool and my support. If an update ever breaks a file of yours, that goes to the top of my list; report it and I will fix it.

Questions go through the message box on this page or by email to [email protected], and the first reply comes within three working days, weekends and public holidays excluded. Support runs for twelve months from the date of purchase, my own word rather than a Superhive Support Period, so there is nothing to renew. After that, help is voluntary, and everything you have received stays yours.

15

License

Source license: LabCraft is distributed under GPL-2.0-or-later, the same license as Blender itself. Blender's license terms require a GPL-compatible license for any add-on that imports its bpy Python API. If you redistribute the source code, your distribution has to be GPL-licensed as well.

Output license: the geometry, materials, and renders you create with the add-on are yours. The GPL does not reach your renders, your scene files, or your final imagery. Use LabCraft output in commercial film, games, products, teaching material, scientific publications, or anything else, without attribution, royalties, or further licensing.

What this means in practice:

  • You may modify the source to suit your pipeline.
  • If you redistribute the source, modified or not, your distribution stays GPL and keeps the copyright and license notices intact.
  • You may not relicense the code as closed-source or pass it off as your own original work.
16

Bundled assets and their licenses

LabCraft's code is GPL-2.0-or-later. Two kinds of bundled asset carry their own, more permissive licenses:

  • Studio HDRIs (labcraft/assets/hdri/): three environment maps from Poly Haven by Sergej Majboroda, released under CC0 1.0, so public domain and no attribution required.
  • Label fonts (labcraft/assets/fonts/): the Liberation family (Sans, Serif, Mono) under the SIL Open Font License 1.1, with the OFL text shipping next to the fonts. The bitmap label weights are original to LabCraft.

LabCraft bundles no third-party code: it is pure Python on Blender's bpy API, so there are no further licenses to track.


  • For one person. The add-on, the user manual as a PDF, and every 1.x update.

    $29
  • For a team of up to five people. The add-on, the user manual as a PDF, and every 1.x update.

    $99
$29

Have questions about this product?
Login to message

Details
Blender Extension Compatible Yes
Published 15 days ago
Blender Version 5.2
Render Engine Used Cycles
License GPL