GroomLab

GroomLab app

Groom, look-dev and export without Maya. Coming soon.

Coming soon

The standalone app is in preview and not released yet. This page describes the current build; details may change before release.

The GroomLab app grooms, lights and exports a groom without Maya. It runs the same core as the Maya plugin, so a .groom file looks the same in both.

Open a groom

With nothing open, the middle of the window offers Open groom, New groom on mesh and your recent files.

  • File > Open Groom... (Ctrl+O) opens a .groom file, saved here or from Maya.
  • File > New Groom on Mesh... (Ctrl+N) starts a groom on an .obj or .abc mesh, with the default graph and no guides. An animated Alembic mesh stays animated: it becomes the groom's scalp cache.
  • Or drop a .groom, .obj or .abc file on the window.

File > Reload from File (Ctrl+R) reads the saved file again. Tools > Transfer Groom to Mesh... moves the groom onto another mesh.

The layout

The viewport fills the window. Everything else floats over it.

WhereWhat
Top leftThe menu button (File, Edit, View, Tools, Help) and the file name. A dot means unsaved edits.
Top centerThe modes: Groom, Look, Cards and Export.
Top rightUndo, redo and Render.
LeftThe brush rail: every brush, then Select (Groom mode).
RightThe panel rail (Groom mode): Guide groups, Nodes, Maps, Correctives, Look, Display and Frame all.
BottomThe brush bar (Groom mode), the stats, and the Graph and Presets pills.

Both rails widen under the mouse to name each button, then shrink back. Nothing else moves.

Each panel button opens a floating panel beside it; click it again to close it. Two more panels open on their own: Brush, from the brush bar's settings button, and Node, when you select a node in the graph.

A timeline shows at the bottom when the groom animates: a scalp or guide cache, or a graph that reads the time. It plays, scrubs and loops, and Follow carries the groom with the scalp. With a Simulate node in the graph it also has Simulate, Bake and Clear.

Groom with brushes

Pick a brush on the left rail. The rail holds the same brushes as Maya, in the same order: Create, Shape, Trim and Paint, then Select and Freeze. See Guides and brushes for what each does.

  • Drag on the groom to stroke. Ctrl reverses the brush; Shift smooths.
  • Freeze paints a mask the other brushes leave alone; frozen guides draw blue. Ctrl unfreezes. To unfreeze everything, remove the freeze map in the Maps panel.
  • Shift+click a guide to brush its level; Page Up and Page Down step it.
  • Hold B and drag, or middle-drag, to set the radius. Shift+middle-drag sets the strength.
  • Alt with any mouse button moves the camera, whatever the tool.
  • Esc leaves the brush for the camera.

The brush bar at the bottom holds the radius, strength, falloff, Sym X and pen pressure. Its settings button opens the Brush panel with every setting.

Guide groups lists the groups. Untick one to hide it, double-click to rename it. Its buttons add a root or child group, generate children, select or remove a group, delete the selected guides, mirror a group +X → -X, sync symmetry, promote a group and resample guides. The parts and flow the Part and Flow brushes drew are listed there too.

The node graph

Press Tab or click the Graph pill. The graph draws over the viewport, so you see the groom between the nodes.

  • Tab over the graph searches for a node to add. Enter adds it, wired after the selected node when their ports match.
  • Drag from an output port to an input to wire them. Drag a wire off an input to disconnect it.
  • Click a node to select it; its params open in the Node panel.
  • Right-click a node to rename, duplicate, bypass or delete it, or make it the output. Right-click the canvas to add a node, tidy the layout or fit the view.
  • Drag empty space to pan; scroll to zoom. Alt+drag still moves the camera.

Close the graph with Esc, the close button beside the pills, or by clicking a mode. Each edit is one undo step. See Node graph for the nodes.

Presets

The Presets pill (or View > Graph Presets) lists the presets by category. Hover one for its description. Each preset has two choices:

  • Apply replaces the graph with the preset.
  • Insert after selected node keeps your graph and adds the preset's look as one Compound node after the selected node, or before the output when nothing is selected.

Either way the preset's sizes are fitted to your scalp, the maps it reads are made, and it is one undo step. The same menu has Save as Preset..., Copy Graph and Paste Graph: a graph as text you can share or paste onto another groom. See Presets.

Parameters

Click a node in the Nodes panel or in the graph to edit it.

  • Params are grouped under headers you can fold. Rarely used ones sit in Advanced at the bottom, folded.
  • A row hides when its setting does nothing, and shows again when it would.
  • Numbers show their unit: a percentage, degrees, turns, seconds or pixels.
  • Ramps get a curve editor. Mappable params can read a value, a painted map, a texture, a color set, an expression or a field.
  • Bypass turns the node off for a with/without comparison.
  • Upgrade shows beside the title when the node was saved with an older version of its operator. It switches the node to the newest behaviour, as one undo step.

Dragging a slider updates the groom while you drag; with GPU preview on (Display panel), the GPU draws the drag and the release commits it.

Painting maps

Open Maps. New map makes a vertex map, a texture map or a guide layer, gray or color. Pick a map and click Paint this map: the brush paints toward the value or color you set, Ctrl the other way. Show on scalp draws the map on the scalp.

A mappable param's Paint pill does it in one step: it makes a map for that param, connects it and starts painting it. Strokes lower the value; Ctrl raises it. See Painting maps.

Correctives

Correctives holds shot-sculpt layers over the animated groom. New layer applies on every frame; Fix this frame applies fully at the current frame, fading in and out over six frames. Pick a layer under Sculpt into and your strokes go into it instead of the guides.

Look

Look mode shows the look card, with three tabs:

  • Material: hair color swatches (the groom's own, black, brown, blonde, red, white, dyed) and the melanin, redness and roughness sliders. These edit the groom's HairColor node, so they save with the groom. More settings shows every hair material setting and the surfaces (scalp, props, eyes).
  • Lighting: presets (studio, daylight, overcast, sunset, rim), exposure, the lights, an environment, the tone map and the background.
  • Render: interactive or refine quality, refine samples and resolution scale.

Render at the top right refines the picture from scratch: the viewport keeps adding frames until it converges. The Look panel on the right rail holds every look setting, texture files included.

Display (right rail) sets what the viewport draws: preview density, the point budget, lookdev shading, GPU preview, strand colors (solid, color set, attribute, random, clump, density), guides, the scalp and a map on the scalp. The point budget starts at 300k points so big grooms stay fast; set it to 0 for no limit.

Game cards

Cards mode turns the groom into hair cards. Click Add Cards node if the graph has none.

  • Strands or Cards switches what the viewport shows. Maps shows the baked maps on the cards, cut out by their coverage as in Maya and in a game engine. Before a bake the cards are flat.
  • LOD picks Hero, Mid, Low or Custom. Sliders set clusters, cards per clump, layers, width, segments, variations, the atlas size and a card budget.
  • Bake maps writes the cards' maps (depth, coverage, tangent, attribute, color, occlusion) as TGA files in a _cards folder beside the saved groom file. The baked atlas shows in the panel.

The panel counts the cards, triangles and textures, and says when the cards changed since the bake. See Game export.

Export

Export mode (Ctrl+E) writes the groom out. Pick a target:

TargetWhat you get
Alembic curvesEvery strand with its ID, channels, color and root UV.
USD curvesBasisCurves in a text .usda layer.
Unreal groomAlembic for Unreal's groom importer, with the guides it simulates.
Cards (glTF)The cards at this frame as .glb (or .gltf), maps inside, with the hair cap.
Unity strandsAlembic for Unity's hair package, resampled to a fixed point count.

Set the frames (the current one, or a range for an animated groom), the density and the target's options, then the output file (type it, or pick it with ...). Export shows its progress and can be cancelled. FBX cards come from Maya.

Exports need a license: in Learning mode the app opens Help > License... instead, where a key is activated (or bought). See Licensing.

Save and open in Maya

File > Save (Ctrl+S) and Save As... (Ctrl+Shift+S) write a .groom file: the graph, guides, scalp, maps, parts, flow and correctives. Export mode has Save and Save as... too.

In Maya, choose GroomLab > Groom Files > Import Groom File.... Select the scalp mesh first if the scene has it, or let GroomLab make the scalp from the file. To bring later edits into a groom linked to the file, save in the app, then choose GroomLab > Groom Files > Reload from Groom File in Maya: one undo step. See The .groom format.

Keyboard shortcuts

Help > Keyboard Shortcuts shows the same list in the app.

KeysWhat it does
Ctrl+OOpen a groom
Ctrl+NNew groom on a mesh
Ctrl+S / Ctrl+Shift+SSave / Save as
Ctrl+RReload from the file
Ctrl+EExport
Ctrl+Z / Ctrl+YUndo / Redo
TabThe node graph (over it: add a node)
EscClose the graph; leave the brush
FFrame all (over the graph: fit it)
BThe brush (B+drag: the radius)
SSelect guides
Shift+middle-dragThe brush strength
Ctrl / Shift (stroke)The opposite effect / smooth
Page Up / Page DownThe brush level
Alt+dragOrbit (with any tool)
DeleteThe selected guides, node or wire
Ctrl+D / Ctrl+L (graph)Duplicate the node / tidy the layout

On this page