Volume Preserving smoothing for Blender

VPS – Volume Preserving Smoothing is new addon for smoothing meshes while trying to maintain object shape.

  • smooth mesh while maintaining main object shape
  • border mesh vertices will slide together with rest of the mesh, to get nice even distribution, or they can be frozen
  • mirror modifier aware = center vertices wont move away from symmetry line
  • ability to define sliding rail edges (marked as sharp) – vertices will move only along those rail edges.
  • three edge tension methods (Uniform, Proportional to edge length, Inverse to edge length)
  • optimized with NUMPY

There are 3 algorithms – some are better in specific cases – eg.

  • Infalte smooth works ok for round convex meshes.
  • Vol smooth is often best but bit slow
  • Laplace smooth is usually ok.

Video with examples how this addon works:


Hair tool – Blender addon ($)

I developed Hair Tool addon for blender to simplify creation process of low/medium poly hair models
This addon will help you generate hair mesh ribbons with uv’s from bezier/nurbs curves. It is how most current games are doing hairs for characters.

Blender Hair Tool addon
Hair Tool workflow


  • ability to generate and interactively  comb hair ribbons based on blender particle hairs (since 1.8 version)
  • generating hair ribbons from mesh surfaces
  • ability to uv unwrap and preview textures on hair curve ribbons
  • easy and convenient switching back and forth between curve ribbons and mesh mesh, while preserving uv’s
  • ability to adjust ribbons radius profile over strand length to taper the ribbons shape
  • ability to convert Grease Pencil strokes to Particle Hair
  • ability to convert Curves to Particle Hair
  • ability to generate Curves/Ribbons from Particle Hair
  • Randomizing ribbons UV (you can draw multiple uv boxes, that will be randomly picked for each ribbon strand).
  • Powerful Curve Resampling – increase, decrease curve/ribbon points amount, while preserving it’s tilt and radius.
  • Generating vertex color and weights gradients for ribbons.
  • And More!

Video tutorial mostly about generating curves from mesh surface, with some tips and tricks, problem solving and stuff: https://youtu.be/WE0aBe8SNls
Video showing: creating particle hair from grease pencil, generating curve ribbons from parent particle hair with children, resampling curve ribbons and other stuff: https://www.youtube.com/watch?v=FLHbzCXOijg
Video showing  interactive hair ribbons combing :https://youtu.be/mUZ9y-eWos8
Video showing new feature: ability uv map curve ribbons, and extra modeling tool for curve ribbons- ‘Linear deformer‘: https://youtu.be/gtbhmYEKGZE
New linear deformer (modified version of Mira Tool) tool can be found on github here.
Video about hair shader: https://vimeo.com/229043427
Video about creating texture: https://vimeo.com/228873075

Link to discord server where you can report bugs.

Basic workflow for generating curves from mesh surface:

First step is to generate base shape of hair. For that use grid mesh, created only of quads. Mark one border of this mesh with sharp edges – those will become roots of hair splines:
Press ‘Curves from surface‘ button located in left Tool Shelf -> Tools, to generate curves from selected object. Generated curve settings can be modified using ‘F6‘ hotkey. You can adjust stuff like hair amount, length, add some noise etc. Or you can do some manual tweaking here going into curve ‘Edit mode’.
To add ribbons profile to generated curves, press ‘Generate Ribbons’ button. There are some settings to play with under ‘F6’ hotkey. Use ‘Align tilt’ to align curves rotation to source mesh (head) .
Uv Hair Curve Ribbons
You can now uv map curve ribbons by going into UV editor and search for ‘Hair UV’ operator under spacebar. Left click and draw rectangular shape, in uv Editor, to define the uv bounds for hair strands. If you assign material to curve ribbons, use ‘Curve Ribbons UV refresh‘ to update material uv mapping. You can convert curve hair to mesh ribbons by using ‘Curve ribbons to mesh ribbons‘ – now they can be exported to game engine. Any time you want, you can go back to curve ribbons by using ‘Mesh ribbons to Curve ribbons‘.

Curve Ribbon operations:

Curve Simplify
Curve Simplify- Allows to reduce point count. Good for reducing polycount on hairs .
Resample Curve
Resample Curve. Allows to increase/decrease number of points each curve is made of. It keeps the original strand radius and tilt.
Smooth Curve
Smooth Curve – smooth strand points (eg. to reduce noise)
Smooth Tilt
Smooth Tilt
Taper Curve
Taper Curve – change strands radius over length
Align Curve tilt
Align Curve tilt – lets you align cure tilt to target object surface.
Randomize Curve Tilt
Randomize Curve Tilt – change curve tilt over its length
Select Tips/Roots
Select Tips/Roots – lets you select first/last points on curves. There is randomize option under F6 properties.

Mesh Ribbon operations:

Add Ribbon Vertex Color
Add Ribbon Vertex Color – create black and white color gradient from strand root to tip
Add Ribbon Weights
Add Ribbon Weights – create vertex weight gradient from strand root to tip
UV hair operator
UV hair operator (found under spacebar) – Left click and draw multiple rectangular shapes, in uv Editor, to define the uv bounds for hair strands. Press enter to confirm.

Interactive hair combing:

Interactive Hair Combing
Interactive Hair Combing – panel is displayed in left Tool Shelf, when combing Blender particle hair. Enabling it will generate interactively updated curve hair ribbons. In that panel you will have option for smoothing, embedding, aligning tilt etc. of generated strands.

Convert operations – let you convert Particle Hair to (ribbon curves), curves to Particle hair, Grease Pencil to Curves etc.:

Ribbon to Curves
Ribbon to Curves/ Curves to Ribbon – allow for switching between ribbon curve and ribbon mesh state. Usually you will want to do hair modeling in curve state, and then do UV in ribbon mesh state.
Particle Hairs to Curve – generate curve ribbons from Particle hair.  Align their tilt to head with ‘Align Tilt’ checkbox, and embed hair roots deeper into the scull using ‘Embed Roots’ parameter.
Particle Hair from Curves (this can be used to convert zbrush fibermesh to blender Particle Hair system). Select curves and target mesh (that will receive Particle Hair) and use ‘Particle Hair from Curves‘ to convert curves object to blenders Hair system.
Ribbons from particle hair with children‘ – gives more evenly distributed result compared to build-in child particles . Great for short Hair.
Particle Hair From Grease Pencil‘ strokes painted with grease pencil, can be converted to particle hair (with some options available under f6). Checkbox next to this button, describes if you want to use Scene GPencil data (when enabled), or Object GP data (when disabled).
  • ‘Flip UV’ option in preferences – if enabled random strands will have uv’s flipped in X-axis.

Hair Tool examples:


Whats new in Batchtool Baker 1.11

Quite some time passed since I described what is new in Batchtools 1.03 version. Right now Batchtool Baker is in version 1.11, so wanted to describe new features.

  • baking presets – lets your save your most used setups for baking:
    Batchtool presets
  • quick texture preview (in blender internal glsl mode – TODO: add Cycles support) – assign all baked maps to material of lowpoly object:
    Batchtools texture preview
  • Added Helper icon – ‘Duplicate passes’ – duplicates current bake job, with all render passes setting – saves time when creating new bake job.
  • added support for Substance Batchtools 6 series this includes (you need to go to addon preferences and select Substance batchtools version 6 in menu):
    • ability to bake non square maps
    • ability to bake 8k textures

New Blender addon Draw Xray

Draw Xray addon will help you to draw retopo mesh on top of your highpoly mesh, without problems of build in blender xray (no proper backface culling).

How to use:

  • grab addon from here Draw Xray
  • install it by searching addon by name ‘Xray’
  • go to Properties panel -> shading – Draw Xray.

You will be able to see your mesh now and few more control sliders:

  • Object offset – will determine how much your lowpoly object will be rendered in front of other objects. Set it to 0 to get default blender behavior.
  • Polygon color opacity
  • Edge /Vertex color opacity.

Updata 1.01

  • better mesh drawing when zooming in/out the vieport camera to mesh.