Hair Tool

Struggling to understand how the UV tool works. So far it worked once, but I wanted to redo my uvs and attempting to run the command a second time yields this error:

Traceback (most recent call last):
  File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\hair_tool\curve_to_strip.py", line 184, in modal
    bpy.types.SpaceImageEditor.draw_handler_remove(self._handle, 'WINDOW')
ValueError: callback_remove(handle): NULL handle given, invalid or already removed


location: <unknown location>:-1


location: <unknown location>:-1

I appreciate the videos, but it is difficult to search them, especially when they’re almost 40 minutes long. In the future I think it would be better to make multiple short videos focused on specific tools so that users can refer back to them by the tool they’re using, rather than having to scrub a video timeline looking for the relevant info.

Yep, I will have make text manual possibly with links to youtube time stamp.
About uv- they operator has to be exectuted in mesh ribbon mode. All you do is click and drag few rectangles in uv editor. Enter to confirm:

I am in ribbon mode, how do I avoid getting the error I posted whenever I try to do the UV operator a second time?

Edit: Also the UV drawing operator says you can press esc to cancel but that seems to just confirm instead.

Made a gif showing what I’m doing: link

aMars your bugs should be fixed in recend update.

Update 1.6.2:

  • Fix ‘uv hair’ operator cancel not undoing changes
  • ‘Only selection’ option set to False when working in ‘Object mode’, and True when in ‘Edit Mode’
  • Added option in preferences to hide grease pencil strokes. Hiding can be disabled now.
  • remade and streamlined Hair Too manual on my site.
  • bugfixes.

Canceling the operator works now, but I still can’t run the operator more than once. Same error as before, just a different line number (203 now).

Woo-hoo, new update, that`s neat :slight_smile: Thanks!

Got an email from saying 1.6.3 was released, but the highest version in the download list on Gumroad is 1.6.2

Okay well, 1.6.3 is on Gumroad now and unfortunately I still cannot run the UV operator more than one time. The operator no longer returns an error when run, instead of simply prompts Finished in the console without ever going into the modal. This bug is so bizarre, sometimes it persists through reinstallation and shutdown. I thought it might be an addon conflict so I tried nuking my entire settings folder and running a bare copy of portable Blender with no other addons besides hair tool and it still won’t run more than once.

Here’s a gif of the bug persisting through shutdown on a clean install of blender with absolutely no user addons installed other than hair tool: https://imgur.com/z3OrpTU – The modal never even shows up the first time.

Can I please get some acknowledgement of this issue? Am I doing something wrong here? Is this a bug? Can/will it be fixed? Are you unable to reproduce it? Would it help if I sent my blend file? Is there any workaround? Am I seriously the only person affected by this? Please tell me something here…

I would need your blend file, because I can’t recreate this bug.
Also after enabling addon, try restart blender.

Edit:
Are you using enter to select operator from spacebar menu? Please don’t. Enter is used to confirm uv’s, and I guess it is conflicting with enter for selecting UV Hair operator. Just left click to select UV hair operator.
Your previous bug with uv cancell should be fixed in 1.6.3

Oh god this was it. Thank you so much, I’ve been losing my mind trying to figure out how to reproduce this only to have it turn out to be so straightforward. Sorry about that :expressionless:

All is well, thank you again.

Looks cool. How well do these work with Dynamics. Can someone make a demo with moving hair?

The update for short hair won me over, will be a great timesaver for the characters in my game, but I´m gonna have to wait until the salary comes in:RocknRoll: Excellent work, truly!

Ok, finally took the plunge (most expensive addon I´ve invested in so far :P). Looking forward to playing around with this when I have time this weekend. Also noticed there´s been an update not mentioned here:

Update 1.6.4:

mostly bugfixes, tweaks, better button descriptions.
ability to add ‘random vertex color per ribbon’. Can be also used on non hair meshes, to add random ID vertex colors per loose mesh parts.
ability to add presets for ‘Ribbons from particle hair with children’ operator

Found small issue - with latest 2.79 builds Vertex Color operations failing with this error, seems Alpha channel is a must //

Traceback (most recent call last):
File “/Users/ipv6/Library/Application Support/Blender/2.79/scripts/addons/hair_tool/curve_to_strip.py”, line 635, in execute
color_layer.data[loop_idx].color = [col2,col2,col2]
ValueError: bpy_struct: item.attr = val: sequences of dimension 0 should contain 4 items, not 3

Small suggestions for future versions:

  • can you add button similar to “Smooth tilt” but with “Smooth scale” (Alt-S) functionality instead of tilt? It will be handy on curves with many points (to propagate strand with to near points with falloff)
  • “Radius flatten” in “Taper curve” currently work on the end of the curve… Is it possible to add similar slider for the beginning of the curve?
  • “Add ribbons/Adjust curve profile” - is it possible to make ribbons with 2-3 peaks? Sometimes easier to have ONE curve with such bumpy profile instead of many paralel curves. Or just add a possibility to jump into edit mode for corresponding bezier object
    Thanks for handy tool! :slight_smile:

Vertex color will be fixed as soon as 2.79a will be released.
About Tapering - you mean adding ability to shrink beginnings of curve profiles, same as the engings? I will add in on todo. For now you can use, in curve edit mode, select -> ‘select tips’, and then with soft selection you can shrink curve radius with alt+s.
About adding additional peaks to curve profile - it can be done now, just use ‘Adjust curve profile’ - and then increase ‘segments V’ parameter, so that bezier profile will have now more points.

Yes, all this tasks can be done manualy, it just faster not to deal with each curve manually.

About profile - this way it still will be semi-circle/single peak. I mean more complex profile like " ///\ " <- 3 peaks per one curve.
Since most of the some type of hairs are paralel curves - making one curve per peak quickly clutter curve editing interface (with x-ray points). And making single curve for several parallel peaks will make editing much easier, all is needed to adjust curve profile in not-so-round shape. But for now i cant even find additinal profiling/ribbon curves in outliner, where they are hiding, btw? :slight_smile:

I think I get what you want- making very wide ribbons, for less visual clutter, and faster coverage of head.
But why would you like to have multi peak ribbon profile? Why won’t you just make ribbons wider? Or I don’t get something. This is how I understand (face front view):
https://image.prntscr.com/image/96ozrHs7TCCsDLFe77Y-XQ.png
A) to many strands - hard to edit
b) less strands with 2 ribbons -profile like ///\
c) why not just make wider ribbons, so there is less of them?
The curve profile is unlinked from scene, so that user won’t delete them or do something unpredictable, that would corrupt that addon workflow. I guess I will add ability to edit it in next version. You can manually plug any curve profile, into ‘Bevel object’ setting of curve, I guess it will work.

Yeah, i was talking about (b) case :slight_smile: © does not give you right curvature/shading, comparing to (b). And (b) gives you ability to make several layers of hair with single curve - you can add detached subcurves to profile bezier with some offset, for example. They all will be rendered separately, making stride ABOVE stride without intersections (along this exact curve, of course) and hassle

>You can manually plug any curve profile, into ‘Bevel object’ setting of curve, I guess it will work.
This is how i going now, it works well. So it`s a suggestion to make HairTool even more convinient, nothing more

>so that user won’t delete them or do something unpredictable
This is the problem indeed… You can make profiling bezier a child of curve itself - it will not affect rendering, but curve and profile bezier will be “together”

Another update in the mail, thanks Jose :slight_smile:

Update 1.6.5: - added “Smooth scale” - similar to ‘Smooth Tilt’ but smooths the radius - added ‘Edit curve profile’, ‘Close Curve Profile’ - if you want to adjust curve bevel profile by hand - ability to taper roots of curves ribbons (previously you could taper just tips) - added ‘Placement jittering’ F6 option for ‘Ribbons from particle hair with children’ button - helps a bit to get more uniform child strands distribution.