Generic Rigid Body Constraint Bug #79954
Labels
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
6 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#79954
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Operating system: Windows 10
Graphics card: Radeon RX 470
Blender Version
Broken: 2.83.0
Worked: Unknown if it ever worked
Short description of error
Angle limit not only doesn't work but causes weird neverending twitching back and forth
UPDATE:
Twitching happens for both cases when both rigid bodies are active and when one of them is passive.
M0DJ38oWQo.mp4
Exact steps for others to reproduce the error
Added subscriber: @ZackMercury-2
Added subscriber: @iss
Changed status from 'Needs Triage' to: 'Needs User Info'
Can you check if this happens in latest development build? https://builder.blender.org/download/
If there is bug still, please upload simple example file.
Ok it works in latest development build blender-2.90.0-05e1ccf10836-windows64! I'm sorry for being lazy to check it at first.
Changed status from 'Needs User Info' to: 'Resolved'
Changed status from 'Resolved' to: 'Archived'
Ok so I didn't have this problem in the simpler setup I described above, but when I added a more complex setup the twitching returned
Changed status from 'Archived' to: 'Resolved'
ZBlrg8C6TO.mp4
how do I revive this report
the only thing I want is to have shoulder joint, so that it can move around but can't twist... or be able to twist with a certain threshold
Changed status from 'Resolved' to: 'Needs User Info'
I am not sure if you can.
Please upload example file, otherwise I can not confirm the issue.
Oh sorry I forgot that
There you go
bug twitching.blend
Added subscribers: @ZedDB, @dr.sybren
The bug report describes only two bodies and an Empty. The uploaded file is much more complex, even with an armature and bone constraints. Following the comments, it looks like the steps to reproduce in the task description don't reproduce the issue.
Having said that, @ZedDB is working on an improved integration with the Bullet library (which manages the physics simulation). It could very well be that this twitching will be gone then as well.
The twitching issue is not solved with my update.
The issue here stems from multiple issues:
If you remove all the constraints and move the bodies so that they are well away from each other, they will still twitch around or go flying.
This can be solved by removing the rigidbody world and re adding all of the bodies again. I wonder how it go into this state. The file is kinda messy so it is hard to tell.
(There seems to have been multiple worlds and rigidbody setups done in it)
The bodies are placed too close to each other and a intersecting from the start.
This will lead to general instability.
The "generic" constraint type doesn't seem to play nicely in this scenario.
The hinge constraint works much better.
Nr 1 I need to know the steps you did to manage to break the world simulation to be able to fix.
Nr 2 I can't fix, you just have to space them out properly so they have enough room.
Nr 3 will need some more research before we can tell if it an issue with blender or with bullet.
Here is as test file with the changes I did to make it stable:
bug twitching1.blend
Hello again. I recreated a similar setup in a new clean file.
PNLJs17GRj.mp4
bug twitching 2.blend
apparently the z angle limit doesn't work either since you can see them turning freely way more than 30 degrees (since my angle limit was -15 to 15)
also I checked the file you sent and it looks like this
BFv90678qv.mp4
You probably are using an older blender version. You need to use a build from the 2.91 branch to get my example file to behave better.
(And also increase the new "Substeps per frame" in the world settings to 10 or so):
rec_30.mp4
I can also still reproduce the general weird general constraint behavior.
Thanks for providing a better test file!
@ZedDB How do you think this report should be classified? Bug? Known Issue?
@dr.sybren We can do it as bug atm.
We'll see if things get better after I have cleaned up the spagetti rigid body code in blender.
This might also be an issue with bullet itself. But it will be easier to tell after the cleanup.
Changed status from 'Needs User Info' to: 'Confirmed'
Added subscriber: @pauanyu_blender
Do you have a task number for this, so that we can properly link them together?
@dr.sybren not yet, I talked to Brecht and Sergey about it and it seems like I should probably make a bigger proposal and design about this.
I could of course try to just make the current approach nicer, but I think maybe thinking ahead a bit and preparing for "everything nodes" here would be good.
This is so that I don't do a big rewrite and then we have to do an other big rewrite relatively soon after I'm done with it.
However I haven't had time yet to discuss this with Sergey as I would want this to work more like a modifier of sorts instead of having it be this special edge case as it is now.
(By modifiers are not allowed to touch the objects transform, so we have to do some more back and forth here).
Added subscriber: @Tiok
broken_rigidbody_constraint.blend
0001-2758.mp4
System Information:
Operating system: Windows 10
Graphics card: NVidia GeForce RTX 3050 Ti
Blender Version:
Broken: 3.0.0
I found a lingering problem with the rigid body constraint as well.
A very simple scene consisting of 2 cubes and 1 "Generic" rigid body constraint.
I did 4 cases of a pendulum:
Complete detail is in the blend file and the video above. For the first three cases, everything was working well. For the fourth case, the small offset created an energy-gaining motion. I hope this helps pinpoint the origin of the bug. Thank you and cheers!