Hair strands do not scale with model #38559

Closed
opened 2014-02-09 16:17:06 +01:00 by Zauber Paracelsus · 16 comments

System Information
64bit Linux Mint 16, kernel 3.11.0
GeForce GTX 650 Ti, driver version 319.32

Blender Version
Broken: 2.69.0 r60991

Short description of error
When a character model is scaled up or down, the hair strands on the character are not scaled with it. They retain the same size and orientation.

Additional Note
I am using blender to make a fantasy-themed comic, and it will have multiple cases of growth or shrinking spells being used. So, this issue impacts what I'm planning on doing and prevents me from using the hair simulation in place of ugly mesh hair.

Exact steps for others to reproduce the error

  1. Download this file: HairScalingBug.blend
  2. In pose mode, scale the single armature bone. The hair does not increase in size with the emitter mesh
  3. Alt-S to scale back down.
  4. Go into Particle Edit mode on the emitter mesh, and style the hair a bit.
  5. Go back into pose mode with the armature bone. Scale up, and see the hair styling get ruined.
**System Information** 64bit Linux Mint 16, kernel 3.11.0 GeForce GTX 650 Ti, driver version 319.32 **Blender Version** Broken: 2.69.0 r60991 **Short description of error** When a character model is scaled up or down, the hair strands on the character are not scaled with it. They retain the same size and orientation. **Additional Note** I am using blender to make a fantasy-themed comic, and it will have multiple cases of growth or shrinking spells being used. So, this issue impacts what I'm planning on doing and prevents me from using the hair simulation in place of ugly mesh hair. **Exact steps for others to reproduce the error** 1) Download this file: [HairScalingBug.blend](https://archive.blender.org/developer/F76588/HairScalingBug.blend) 2) In pose mode, scale the single armature bone. The hair does not increase in size with the emitter mesh 3) Alt-S to scale back down. 4) Go into Particle Edit mode on the emitter mesh, and style the hair a bit. 5) Go back into pose mode with the armature bone. Scale up, and see the hair styling get ruined.

Changed status to: 'Open'

Changed status to: 'Open'

Added subscriber: @ZauberParacelsus

Added subscriber: @ZauberParacelsus

Changed status from 'Open' to: 'Archived'

Changed status from 'Open' to: 'Archived'
Brecht Van Lommel self-assigned this 2014-02-10 14:34:12 +01:00

That's by design unfortunately. I think it was a mistake, the particle/hair system has been designed to work in world space, while it really should work in object space. We don't consider that a bug at the moment, it will require a major refactor to fix that.

That's by design unfortunately. I think it was a mistake, the particle/hair system has been designed to work in world space, while it really should work in object space. We don't consider that a bug at the moment, it will require a major refactor to fix that.

Do you have any suggestions for workarounds?

Do you have any suggestions for workarounds?

You could perhaps parent the particle object to another object, then the hairs do scale I think, though for thickness etc. you may need to create a driver as well.

You could perhaps parent the particle object to another object, then the hairs do scale I think, though for thickness etc. you may need to create a driver as well.

Yeah, I've tried that already. Doesn't work, sadly.

Yeah, I've tried that already. Doesn't work, sadly.

Added subscriber: @brecht

Added subscriber: @brecht

@brecht I figured out a solution to this one. Instead of making the scale driver apply to the armature's root bone, I apply it to the scale of the armature itself. Doing it that way, nothing gets messed up at all.

EDIT: I think what's going on is that hair doesn't get properly affected by scaling with the armature modifier. Whereas if I just scale the armature itself, everything gets scaled through parenting relationships instead.

@brecht I figured out a solution to this one. Instead of making the scale driver apply to the armature's root bone, I apply it to the scale of the armature itself. Doing it that way, nothing gets messed up at all. EDIT: I think what's going on is that hair doesn't get properly affected by scaling with the armature modifier. Whereas if I just scale the armature itself, everything gets scaled through parenting relationships instead.

Added subscriber: @ShaunKreider

Added subscriber: @ShaunKreider

@ZauberParacelsus thanks for that work-around! This scaling issue has been getting in the way of using multiple characters in one scene that weren't exactly created proportionately to each other.

@ZauberParacelsus thanks for that work-around! This scaling issue has been getting in the way of using multiple characters in one scene that weren't exactly created proportionately to each other.

hey, i do have this same issue. When scaling down the armature works, but i want to scale down the root Bone. I tried by adding drivers to root bone to the armature scale, but it doesn't work. But i found one solution, convert the particle system into mesh, after that, convert it into curve and give some thickness, then decimate the hair as now it will be having a heavy number of polygons(something like around 50 Million! But your solution sounds more good and it will keep the polygons never increase, so that will help. It would be great if you can tell me how did you do it?

Thank you

hey, i do have this same issue. When scaling down the armature works, but i want to scale down the root Bone. I tried by adding drivers to root bone to the armature scale, but it doesn't work. But i found one solution, convert the particle system into mesh, after that, convert it into curve and give some thickness, then decimate the hair as now it will be having a heavy number of polygons(something like around 50 Million! But your solution sounds more good and it will keep the polygons never increase, so that will help. It would be great if you can tell me how did you do it? Thank you

That was 9 years ago... but I think my work around was to append the character into a scene and scale everything together in object mode to the needed size before working in pose mode.

That was 9 years ago... but I think my work around was to append the character into a scene and scale everything together in object mode to the needed size before working in pose mode.

hey. thank you for your reply, can't we do it any other way? the way it told you is very laggy

hey. thank you for your reply, can't we do it any other way? the way it told you is very laggy

Scaling the root bone has the same effect as scaling everything in object mode though. Usually. Can't help you any further I stopped using bender hair years ago.

Scaling the root bone has the same effect as scaling everything in object mode though. Usually. Can't help you any further I stopped using bender hair years ago.

ok, thank you! now everything seems fine! thank you for your help

ok, thank you! now everything seems fine! thank you for your help
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#38559
No description provided.