Home Technical Talk

HairTG - Hair & Fur, procedural hair/fur texture generator and 3D hair card utility - MASTER THREAD

OlivierLau
polycounter lvl 2
Offline / Send Message
OlivierLau polycounter lvl 2
HairTG - Hair & Fur is a hair/fur texture generator for Substance Designer and a Blender add-on to help with 3D hair card management. On Substance Designer, it creates procedural hair/fur clump textures suitable for hair cards, brushes or 2D hair work. It can also be used to generate non-hair textures for designs based on patterns along curves. The Blender 2.8 add-on offers multiple tools to ease creation of hair card based 3D hair models, hair card UV unwrap, modeling and composition.

HairTG - Strand
, is a free, limited version of the tool demonstrating some of ifs features.

For a list of features and where to get the tool, please check the Hair & Fur website.

The following tutorial videos are available:

Getting Started tutorial: this is a new tutorial based on the 2.5 version, it covers the main texturing features over one hour. It does not go into the same amount of details as the multi-part tutorial series below but will you get started quickly with the tools.

The multi-part tutorial series:
Part 1: SD intro, basic Hair & Fur concepts and output maps
Part 2: Hair & Fur parameters continued
Part 3: Colorization
Part 4: Tiling and map usage in Toolbag and UE4
Part 5: 7 hair design examples
Part 6: New features in HairTG - Hair & Fur 2.5
HairTG - Hair & Fur Blender add-on tutorial

Feel free to use this thread for questions/support!


















Replies

  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    I've released a small update addressing a few issues in the 1.2 release, 1.2.1 release notes are the following:

    • Updated all graphs to Substance Designer 2019.1.0: make sure to use this version to open the sbs demo files (sbsars are still compatible with the previous version).
    • HairTG – Tiler template graph HairTG-Tiler-demo.sbs has been rebuilt for better organization and performance. There are now visualization nodes at each output of each hair clump as well as resolution reduction before entering into the Tiler nodes which greatly improves performance of the latter. The new graph also outputs a Normal map if needed.
    • All sbsars have now proper icons for showing up into the Library.
    • Tiler packages have been updated so the graph contained into the sbsar package can now be dragged from the Library into a user graph.
    • Documentation update, in particular regarding the new Tiler sample graph.

    There are cool new features planned for the coming months for the Hair Clump Tool so stay tuned!
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    I am updating this thread for the 2.0 release of Hair & Fur, new name of the Hair Clump Tool. Please check the main post for new video, screens and details!
  • Justo
    Offline / Send Message
    Justo polycounter
    Thanks for updating these threads Olivier. Your works looks very interesting :)
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2

    Hair & Fur 2.1 has been released, with Flow map  generation improvements, more Tiler features and tips for hair textures usage in Toolbag and UE4.

    • Flow map improvements: better accuracy, simplified and optional filter, better edge management, optional orientated background generation, solid or using dilation.
    • Performance improvements, pattern resolution is also now selectable.
    • Tiler Substances support individual texture rotation and Flow map background generation.
    • Usage instructions for Toolbag and UE4, plus a Toolbag sample scene.
    • A few fixes, details in the Release Notes.

    Flow map used in Toolbag to drive anisotropic reflection:



    Here are flow map examples with various filtering settings and backgrounds:



    Texture rotation in Tiler:



  • oraeles77
    Offline / Send Message
    oraeles77 polycounter lvl 7
    what version of SD is it compatible with?
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    oraeles77 : this is for Substance Designer 2019.2 (current version), good point I will add this to the description.
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    Hair & Fur has now tutorial videos, 4 hours over 5 videos where I cover most aspects of the app, including creation of various hair designs and usage in external applications. This tutorial is friendly with non Substance Designer users, the few concepts to know about it are explained in the introduction and sometimes along the videos as needed.
    Part 1: SD intro, basic Hair & Fur concepts and output maps
    Part 2: Hair & Fur parameters continued
    Part 3: Colorization
    Part 4: Tiling and map usage in Toolbag and UE4
    Part 5: 7 hair design examples
    Enjoy!
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    Hey Polycounters (!), quick message to let you know my products including Hair & Fur are 30% off on Gumroad for the Black Friday week until next monday using code blackfriday19. I also recently released two plugins for Substance Designer, Global Search and ParamCopy which can help in your workflow. Check out all these at my Gumroad page!

  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    Here are a few things I am working on and that will come next in an upcoming version of Hair & Fur:
    Infinite Hair in Freestyle mode (i.e. the version of Hair & Fur where you can manipulate control points in the 2D view) is joining the tip and root of each hair strand to make it continuous. This is helpful to design hair buns or any other type of very curvy hair design you don't want to have segmented because of the hair cards geometry. Using stray hair and random lengths, it is possible to mix up infinite hair with non infinite ones as shown in the below video.
    https://www.youtube.com/watch?v=ALPnO6fdjTU
    Hair & Fur will for the first time include a Substance Designer plugin to help quickly design and set up hair clumps in various manners. The below video shows the automatic tiling graph creation. We open a dialog box from where we define how many hair clumps we want to tile (rows/columns) into a single set of PBR textures, as well as the types of textures we want plus other options, the plugin then creates the tiling graph with the instances of Hair & Fur and the Tiling Substance, all pre-configured. All what's left to do is design the hair clumps!
    https://www.youtube.com/watch?v=ve_8uIb6uTM
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    HairTG - Hair & Fur next update will for the first time go beyond texturing and into the 3D world :) Actually I have been experimenting with hair card grooming and well, it took me some time so I thought I could do a tool to automate some parts of the process in Blender. This was actually unexpected but well, it turned out to be very useful to me so why not including it into the Hair & Fur package? So, next version of Hair & Fur will be delayed by a few weeks but will contain a Blender 2.8x addon which can greatly speed up the hair card generation and positioning workflow. Let's go over the main functionalities.


    Automatic hair card UV generation

    This one has been a great time saver to me, with this feature you will be able to generate hair card UVs from the hair card meshes positioned over a reference mesh. The reference mesh holds the global texture containing all the card textures, just position your card meshes over it, click a button and your cards are UVed.
    http://www.youtube.com/watch?v=CGaY4vC1KfU

    Hair card folding

    Hair cards are flat by nature, so folding provides them some thickness when viewed from the sides. The addon will let you fold cards using three methods, fixed, random and curved, which can be applied from a flat state or from the current folding state, which means folding operations can be combined (the below video doesn't demonstrate all this as it was made after an early implementation of the folding). The tool will also let you quickly set the mesh origin at the hair root as well as center the cards at (0,0,0).

    http://www.youtube.com/watch?v=CGaY4vC1KfU

    Hair card combination

    Whereas folding makes cards less flat, combining cards provides them with an even better aspect when seen from different angles. The addon will let you combine sets of 2 or 3 cards with 4 types of combinations for each.

    http://www.youtube.com/watch?v=c0Czb2Oc2BA

    Hair card population from 3D particle grooming

    Finally, another great time saver is the ability to assign hair cards to a 3D particle hair grooming. Basically you'll use the regular Blender particle hair grooming feature, then convert these particles into a mesh (a native Blender feature). The addon will then let you convert this mesh into independent curves for which you can choose the naming scheme and container collection. The addon will pick cards from a card pool of your choice and generate hair cards from that pool assigning them the curves previously generated. The generated cards then just need to be moved up on the Z axis so they jump onto the curves and adopt their shape. Curves can then be edited independently to refine their position and shape along with the hair cards supporting them. The operation can be repeated for multiple layers so you can populate different areas using different card pools.

    http://www.youtube.com/watch?v=PY27Hu1NvL0

    The tool will also provide some convenience utilities such as:

    • duplication of cards without duplicating their material and moving of the copies into a specific collection.
    • material assignment/removal on a set of cards.
    • renaming of a set of objects with a suffix and/or prefix.


    That's all folks,  the next update of Hair&Fur including the add-on should land around February if all goes well!

  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    HairTG- Hair & Fur 2.5 is out! This version consolidates the procedural hair/fur texture generation functions and expands in new directions with a Substance Designer plugin to handle automation tasks and a Blender add-on covering many aspects of the real-time hair card based generation and composition. It also comes with 3D hair models and two new tutorial videos, one for the 2.5 features and another for the Blender add-on. Follow some pictures of the 3D samples and below the list of changes:





    Here are the main new features in version 2.5: Package    • Three 3D hair samples with tiling graphs, textures, 3D models and Toolbag scenes.    • Updated templates and samples.
    Substance Designer Substances    • Freestyle and Regular operation modes are now merged into a single Hair & Fur Substance, the Freestyle sbsar variant has been removed. A Mode parameter is used to choose the mode of operation. This functionality is possible only since Substance Designer 2019.3, this is why this version (or above) is required.    • Infinite Hair in Freestyle mode: joins the last and first control points to create a continuous curve, ideal to make hair bun cards. The Depth Profile Substance has also been upgraded to support vertical tiling in order to prevent any issue with depth continuity when Infinite Hair is being used.

        • Combiner is a new Substance used to combine the maps of multiple hair clumps (up to 5). This way you may design a clump with multiple Hair & Fur instances and combine them afterwards, the Combiner Substance will handle the proper map blending automatically. Combiners can also be combined together.

        • The new Hair Clump parameter section enables to position the whole clump within the texture and resize it. Resizing is made without changing the hair strand thickness, enabling to design an initial clump and resize it later function of other clumps into a tiling graph for instance.    • New Depth Separation parameters (in Outputs/Depth) enable to offset hair strands from each other in depth space. This is a bit like combining an ID map with a Depth map, but operated while the strand is being drawn. This results in depth maps having more contrast.

    • Various small changes and fixes, see the Release Notes for details.
    Substance Designer pluginOnce installed, the plugin adds a new menu in the Substance Designer menu bar with the following functionalities:    • Copy of tiling parameters between Tiler instances: this helps with the fast tiling scenario where a single map type is first being tiled with a Tiler instance then its parameters are reported into the Global Tiler. Parameters can now be easily transferred between Tiler instances without the need to copy them over manually.    • Tiling graph creation: a dialog box lets users define the size of a tiling graph (row, columns) and various other parameters such as resolution, maps to include, intermediary nodes etc. A tiling graph is then automatically created based on these parameters.


    Blender add-onThe Blender 2.81a add-on provides several utilities to facilitate hair card creation, UV unwrapping and composition. It has the following features:    • Automatic hair card UV unwrapping based on their position relatively to a reference mesh.


        • Random UV horizontal offsets can be generated in order to quickly produce a variety of textured cards using an underlying texture created to that attention.

        • Card folding with 3 folding types, Random, Fixed and Curved to provide cards with thickness. Folding can be operated from a flat state or the current folding state enabling combination of folding types. Folding can be reversed and canceled.

        • Card combination: sets of 2 or 3 cards can be combined to provide them a better appearance when viewed from different angles. Four combination types are available for 2-card and 3-card sets. Once combined, cards can still be moved/rotated until they are joined into a single mesh.

        • Card origin can be set to the card root automatically, either on a single card or a card combination, enabling to create longer or shorter hair with a simple sizing operation.    • Hair card association to particle hair grooming: this powerful feature enables usage of the native Blender 3D hair grooming system to generate hair curves which are then associated to hair cards. Curves can then be edited independently with cards following their paths.

        • The Replace Cards function enables to replace a set of cards with another card, even when associated to curves.     • A Finalize tool generates a hair model (single mesh or multiple hair cards meshes) from the card/curve associations.    • A Utility section provides convenience functions to assign/remove materials, duplicate cards without duplicating their material and rename objects in various ways.
    For more details on this update, please check the new tutorial videos:

    This version was a long time in the works and marks a milestone in the development of Hair & Fur which now provides tools covering the real-time hair creation workflow from 2D procedural/non-destructive texturing to 3D hair card creation and composition up to the final 3D hair model. Many things are still planned for the HairTG line so stay tuned!
  • apollo580
    Offline / Send Message
    apollo580 polycounter lvl 9
    Just bought this tool, looks really cool! I only have one issue atm, when I delete the unnecessary files in the demo .sbs I no longer have inputs for colour or custom shape on my graph, any help with be appreciated!



  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    apollo580 Hi, so first thing I would recommend you upgrade to the latest version (on the store where you originally bought it) as Hair Clump Tool is a very old version, the product is now called HairTG - Hair & Fur and current version is 2.5.1 (requires Substance Designer 2019.3). To have the custom shape input you need to enable usage of custom pattern in the Substance parameters (click on the HairTG node to display its parameters in the Properties view). To have the color input/outputs you need to enable the Color output and a Colorization mode (group or length), but you may not have these in this old version.
  • apollo580
    Offline / Send Message
    apollo580 polycounter lvl 9
    apollo580 Hi, so first thing I would recommend you upgrade to the latest version (on the store where you originally bought it) as Hair Clump Tool is a very old version, the product is now called HairTG - Hair & Fur and current version is 2.5.1 (requires Substance Designer 2019.3). To have the custom shape input you need to enable usage of custom pattern in the Substance parameters (click on the HairTG node to display its parameters in the Properties view). To have the color input/outputs you need to enable the Color output and a Colorization mode (group or length), but you may not have these in this old version.

    Thank you for the support, I actually realized afterwards that I had an old version. I actually got a few hair clumps going but I was hoping you can answer a question regarding tiling. I created separate clumps in my substance and just imported those into my "tiling graph". Im running into an issue where I have to manually scale the clumps to fit my desired size. All my maps are 4k but on my tiling export they start off very small. Awesome tool btw!



  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    @apollo580: thanks! So regarding the tiling, this is normal the textures start off very small, this depends on the number of rows/columns chosen and the input/output aspect ratios and is also due to the fact that hair clump textures occupy a relatively small space (horizontally) in their own texture space. Once you have set up the number of rows and columns you need, perform the following steps:
    1. Setup the input and output aspect ratios. As it seems you are using a square tiling texture, both should be set to 1:1
    2. Setup the X and Y Input Sizing to scale the hair clumps until they are tall enough in the tiled texture. This sizing will not upsample your hair clump textures (i.e. you will not loose quality), it will only reduce them less as the sizing gets larger.
    3. Adjust the general X Input Spacing and X Offset to space the clumps horizontally.
    At this point, most hair clumps should be in position. If not then use the Individual Positioning fields to perform a finer positioning.



    I just published a new tutorial video, shorter than the multi-part tutorial series, which covers the main texturing functionalities in 1 hour: 

    http://youtu.be/KkoRbbPH-Xo

    You may want to check the tiling part (from 48:05 on).

    Also, if you need to size some hair clumps comparatively to others, I would suggest not to use the Tiler for this. Instead, use the Hair Clump parameter group of the Hair & Fur Substance where you can set up the clump width/height (see tutorial video at 18:26). This way the strand thickness will remain same as the other hair clumps (unlike if you were doing a post-resizing in Tiler or other component). Let me know if any issue!
  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2
    HairTG - Hair & Fur Minute Designs is a series of short videos showing hair clump texture creation over a few minutes (usually 1 to 3mn) using HairTG - Hair & Fur. These can complement the recently released tutorial video. This first batch consists in 7 designs, I may add more in the future. If there are specific designs you would like to be covered in this series please let me know!

  • OlivierLau
    Offline / Send Message
    OlivierLau polycounter lvl 2

    http://youtu.be/_4zkU_XS4u4

    Hi everyone,

    The 2.6 update of HairTG - Hair & Fur has just been released! This is an update to the texturing side with major new features in the Substance Designer plugin focused on making the workflow more efficient and automated.

    Natural language commands

    Want to create curly hair? Just click in the new Hair & Fur Console and type create curly hair. Shaping them as a slight S? Type shape as slight S. Or maybe in circle? type shape O. Less hair? type reduce hair by 50%.

    With 250+ recognized terms and 30+ command categories, natural language commands let you quickly and intuitively create base designs that can then be tweaked more finely using parameter controls. They also provide read/write access to every single parameter of Hair & Fur instances.

    Meta-commands using command files

    Not only natural language commands can be typed into the Hair & Fur Console, they can also be gathered into text files to create meta-commands. These can then be called from either the console or menus, enabling to set up Hair & Fur instances with certain properties. A single meta-command can turn a design into stylized hair, or straight hair into a specific type of curly hair, whatever Hair & Fur parameters provide in terms of control can be brought into meta-commands.

    Meta-commands let you set up a modular library of design properties you may then combine to create complete designs. They can also be used to demonstrate variations around a given design and applied from menus without any knowledge of the hair tool.

    Texture creation automation with Python scripting

    A simple Hair & Fur Python API lets you send commands to Hair & Fur instances from Python scripts. The system leverages the Substance Designer Python support, your scripts are managed and run from within the context of the Hair & Fur plugin so you don't have to create a plugin yourself nor use the Substance Designer Python API.

    As demonstrated with the auto_variations sample provided in the package, you can this way fully create texture sets from script, generate and export many variations of them.

    New tutorials

    Finally, this update comes with the free 3-part Commands tutorial:

    • Part A: a workflow using commands, command files and parameter controls.
    • Part B: review of all the available commands in version 2.6
    • Part C: Python scripting

    HairTG - Hair & Fur 2.6 is a free update to current Hair & Fur users  (requires Substance Designer 2019.3 or above).

    We also recently set up a Discord server which is a great place to ask questions, give feedback, get support and share your work, so feel free to join!

Sign In or Register to comment.