Issue with rigid body and modifiers dependent on transform #58044

Closed
opened 2018-11-25 10:52:10 +01:00 by Mal Duffin · 47 comments
Member

System Information
Windows 10, GTX1070

Blender Version
Broken: Blender 2.83
Working: Blender 2.79 ( <- Updated info )

Short description of error
When adding hair to a rigid body, the hair position doesn't update.

Exact steps for others to reproduce the error

  • In the Physics tab select rigid body
  • In the Particles tab create new Hair
  • Select Hair Dynamics
  • Play the animation.
    The ball will fall, but the hair doesn't follow it.

Have a look at the attached blend - beside the rigid body cube, I've animated a second cubes position to fall, and the hair follows it correctly
hair_particles_on_rigid_body.blend.

**System Information** Windows 10, GTX1070 **Blender Version** Broken: Blender 2.83 Working: Blender 2.79 ( <- Updated info ) **Short description of error** When adding hair to a rigid body, the hair position doesn't update. **Exact steps for others to reproduce the error** - In the Physics tab select rigid body - In the Particles tab create new Hair - Select Hair Dynamics - Play the animation. The ball will fall, but the hair doesn't follow it. Have a look at the attached blend - beside the rigid body cube, I've animated a second cubes position to fall, and the hair follows it correctly [hair_particles_on_rigid_body.blend](https://archive.blender.org/developer/F5712545/hair_particles_on_rigid_body.blend).
Author
Member

Added subscriber: @MalDuffin

Added subscriber: @MalDuffin

#68128 was marked as duplicate of this issue

#68128 was marked as duplicate of this issue

#71011 was marked as duplicate of this issue

#71011 was marked as duplicate of this issue

#69419 was marked as duplicate of this issue

#69419 was marked as duplicate of this issue

#69407 was marked as duplicate of this issue

#69407 was marked as duplicate of this issue

#66935 was marked as duplicate of this issue

#66935 was marked as duplicate of this issue

#66828 was marked as duplicate of this issue

#66828 was marked as duplicate of this issue

#60079 was marked as duplicate of this issue

#60079 was marked as duplicate of this issue

#65541 was marked as duplicate of this issue

#65541 was marked as duplicate of this issue

#63761 was marked as duplicate of this issue

#63761 was marked as duplicate of this issue
Author
Member

Note that, if you carry out the above steps and skip 7), the ( non-hair ) particle effects do follow the cube.

Note that, if you carry out the above steps and skip 7), the ( non-hair ) particle effects do follow the cube.
Member

Added subscribers: @fclem, @Sergey, @lichtwerk

Added subscribers: @fclem, @Sergey, @lichtwerk
Member

Can confirm this.
This could just be a drawing issue (e.g. if you go into Particle Editmode the hair is actually in the right spot).

Havent checked code. If this drawing only, I would kindly ask @fclem to have a look, but it might also be one for @Sergey to check

Can confirm this. This could just be a drawing issue (e.g. if you go into Particle Editmode the hair is actually in the right spot). Havent checked code. If this drawing only, I would kindly ask @fclem to have a look, but it might also be one for @Sergey to check
Author
Member

Another interesting related issue. If you replace step 4) Rigid Body with 4a) Soft Body and optionally 4b) Toggle off Goal, then the hair particles do follow the new physics position of the cube when you press play after step 8)
So, hair seems to work with Soft Body physics updates and not Rigid Body physics updates.

Another interesting related issue. If you replace step 4) Rigid Body with 4a) Soft Body and optionally 4b) Toggle off Goal, then the hair particles do follow the new physics position of the cube when you press play after step 8) So, hair seems to work with Soft Body physics updates and not Rigid Body physics updates.
Author
Member

When in particle mode...

  • Hair appears at the position of the rigid body
    , but ( if you enable hair dynamics )
  • Hair strands haven't moved, it's like they are showing the default non-simulated hair particle strand shape, rather than the actual simulated shape of the hairs.

In edit mode...

  • Hair doesn't move with the rigid body
    but
  • Hair strands do move as if they are simulated
When in particle mode... - Hair appears at the position of the rigid body , but ( if you enable hair dynamics ) - Hair strands haven't moved, it's like they are showing the default non-simulated hair particle strand shape, rather than the actual simulated shape of the hairs. In edit mode... - Hair doesn't move with the rigid body but - Hair strands do move as if they are simulated

Added subscriber: @gogo

Added subscriber: @gogo
Author
Member

@Sergey - I see you just fixed another issue with rigid bodies and particles, could you have a look at this one too?

@Sergey - I see you just fixed another issue with rigid bodies and particles, could you have a look at this one too?
Sergey Sharybin self-assigned this 2019-04-04 09:36:52 +02:00

Would need to have a closer look, but could be caused by the change in the evaluation order of rigid body, similar to #63028.

The issue here is that such setups are causing feedback loop in the system:

  • Hair is evaluated as a part of modifier stack
  • Modifier stack in this case needs to know object's world position
  • Rigid body defines the world position
  • Rigid body needs to know output of the modifier stack to perform proper collisions

This appeared to work in 2.7 better, but was always causing one frame offset during animation. Which isn't really helpful, since it causes self-intersections which are impossible to fix. Additionally, rendering motion blur becomes a huge issue in those configurations.

Would need to have a closer look, but could be caused by the change in the evaluation order of rigid body, similar to #63028. The issue here is that such setups are causing feedback loop in the system: - Hair is evaluated as a part of modifier stack - Modifier stack in this case needs to know object's world position - Rigid body defines the world position - Rigid body needs to know output of the modifier stack to perform proper collisions This appeared to work in 2.7 better, but was always causing one frame offset during animation. Which isn't really helpful, since it causes self-intersections which are impossible to fix. Additionally, rendering motion blur becomes a huge issue in those configurations.
Author
Member

Hi Sergey,

Thanks for having a look.

Hopefully it can be fixed, think of all the hairy domino simulations that need rendered! :P

Hi Sergey, Thanks for having a look. Hopefully it can be fixed, think of all the hairy domino simulations that need rendered! :P

Added subscribers: @gase12, @ZedDB

Added subscribers: @gase12, @ZedDB

Added subscribers: @keinerweiss, @StephenSwaney, @grosgood

Added subscribers: @keinerweiss, @StephenSwaney, @grosgood

Added subscribers: @dadou99, @sreich, @3di, @SmartySmart702, @brecht

Added subscribers: @dadou99, @sreich, @3di, @SmartySmart702, @brecht
Sergey Sharybin changed title from Issue with adding hair to rigid body to Issue with rigid body and modifiers dependent on transform 2019-07-09 11:06:25 +02:00

Added subscriber: @badbytes

Added subscriber: @badbytes

Just tested the release candidate and the bug is still here. Strangely it did appear to work once, with strange results, but after that it went back to only taking into account frame one of the rigid body simulation.

Just tested the release candidate and the bug is still here. Strangely it did appear to work once, with strange results, but after that it went back to only taking into account frame one of the rigid body simulation.

Added subscriber: @jricardo_rr

Added subscriber: @jricardo_rr

Guys, the entire physics system is broken, has this accidentally been overlooked? Really surprised 2.8 was released without this being fixed first.

check the file below which shows how this affects all interactions (not just hair).

physics broken.blend

Guys, the entire physics system is broken, has this accidentally been overlooked? Really surprised 2.8 was released without this being fixed first. check the file below which shows how this affects all interactions (not just hair). [physics broken.blend](https://archive.blender.org/developer/F7639303/physics_broken.blend)

Please leave setting priorities to developers.

Please leave setting priorities to developers.

In #58044#740558, @brecht wrote:
Please leave setting priorities to developers.

OK Sorry, I just assumed the physics system no longer functioning would have been enough to warrant a 2.8 release delay, so I just wanted it to get immediate attention as I presumed this must have been lost in all of the bug reports over the past couple of months.

> In #58044#740558, @brecht wrote: > Please leave setting priorities to developers. OK Sorry, I just assumed the physics system no longer functioning would have been enough to warrant a 2.8 release delay, so I just wanted it to get immediate attention as I presumed this must have been lost in all of the bug reports over the past couple of months.

Added subscriber: @zakleap

Added subscriber: @zakleap

Constraints are also ignored by rigid body physics. Animations have been greatly restricted by the lack of physics capability.

Constraints are also ignored by rigid body physics. Animations have been greatly restricted by the lack of physics capability.
Member

I will dare raising this to High.

@brecht, @Sergey: shouldnt we try tackling this for 2.81?
(just correct me if I am wrong though...)

I will dare raising this to High. @brecht, @Sergey: shouldnt we try tackling this for 2.81? (just correct me if I am wrong though...)

Removed subscriber: @fclem

Removed subscriber: @fclem

Added subscriber: @EricBu

Added subscriber: @EricBu
Member

Added subscriber: @Eary

Added subscriber: @Eary
Contributor

I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube.

Base on that, I believe this has something to do with the .blend1 file. I am not a programmer, I don't know what the .blend1 file is, but I guess it is some kind of cache file. My theory is that although blender understands the hair should be following, the cache file (.blend1 file) is not updated, therefore the hair particles don't follow the cube as they should.

I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube. Base on that, I believe this has something to do with the .blend1 file. I am not a programmer, I don't know what the .blend1 file is, but I guess it is some kind of cache file. My theory is that although blender understands the hair should be following, the cache file (.blend1 file) is not updated, therefore the hair particles don't follow the cube as they should.

Added subscriber: @davis095381-2

Added subscriber: @davis095381-2

In #58044#768622, @Eary wrote:
I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube.

Try again and reopen blender without deleting .blend1 file, because .blend1 file is just a backup of the saved .blend file.

> In #58044#768622, @Eary wrote: > I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube. > Try again and reopen blender without deleting .blend1 file, because .blend1 file is just a backup of the saved .blend file.
Contributor

In #58044#768697, @davis095381-2 wrote:

In #58044#768622, @Eary wrote:
I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube.

Try again and reopen blender without deleting .blend1 file, because .blend1 file is just a backup of the saved .blend file.

You are right, I tried it just now and it worked, perhaps it's not the .blend1 file, it is some kind of other problem. It is still the case though, that something is not updated, reloading Blender just refreshes it.

By the way, in order for it to work, set the shape to Mesh and set the source to Base under the "Collision" settings of the Rigid Body tab. I mentioned this in my post, which is closed now, it doesn't seem to be mentioned right here.

> In #58044#768697, @davis095381-2 wrote: >> In #58044#768622, @Eary wrote: >> I posted another similar post before being led to this one, I figured that after you do all the steps, don't play the animation yet, save the project, and close blender. Delete the .blend1 file beside the .blend file, the open it up again, and play the animation, the hair particles are now following the cube. >> > > Try again and reopen blender without deleting .blend1 file, because .blend1 file is just a backup of the saved .blend file. You are right, I tried it just now and it worked, perhaps it's not the .blend1 file, it is some kind of other problem. It is still the case though, that something is not updated, reloading Blender just refreshes it. By the way, in order for it to work, set the shape to Mesh and set the source to Base under the "Collision" settings of the Rigid Body tab. I mentioned this in my post, which is closed now, it doesn't seem to be mentioned right here.
Member

@Sergey : I have added this to 2.81 milestone (since it was set to "High"), mind checking again?

@Sergey : I have added this to 2.81 milestone (since it was set to "High"), mind checking again?

Added subscriber: @fraetz

Added subscriber: @fraetz
Sergey Sharybin was unassigned by Brecht Van Lommel 2019-09-17 15:30:00 +02:00

This needs bigger design changes to the dependency graph and physics, and while it would be good if we can, it is not a requirement to be fixed for 2.81.

This needs bigger design changes to the dependency graph and physics, and while it would be good if we can, it is not a requirement to be fixed for 2.81.

Added subscriber: @Hookflash

Added subscriber: @Hookflash

Added subscriber: @vr_sebas

Added subscriber: @vr_sebas
Member

Added subscriber: @EAW

Added subscriber: @EAW
Member

Added subscriber: @RodDavis

Added subscriber: @RodDavis
Added subscribers: @sangwook71, @mano-wii, @LucaRood-3, @JacquesLucke

Closed as duplicate of #77685

Closed as duplicate of #77685
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
17 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#58044
No description provided.