Wiggle bones (a jiggle bone implementation for 2.8)

Yeah, I’ve had a lot of ever-increasing motion problems while trying out different solutions. I’m happy to hear that progress was made, and I’m waiting for a new release with at least some collisions working. I’m sure I will be able to find a good use for the current state of collisions, to use it at least as a base before handmade animations.

1 Like

Hi there! just wanted to step in once more and let you all know i love this addon and it would be amazing to have it sometime with collisions :wink: self collision not so super important, but simple collisions for hair rigs and ropes or similair things. is there a beta version we can try?

i am currently using wiggle bones mostly for organic elements of characters, but do rig hairs and other clothings myself with cloth physics and collisions . quite time consuming doing it by hand over and over again. so i can’t wait to see a release of wiggle boens with collisions already included :slight_smile: keep it up!

2 Likes

Hello! I found out about this plugin through Royal Skies’ video, and I’ve been trying it out recently, and I’m amazed at how easy it is to use and how well it works!
But I was wondering, is it possible to make this plugin with optional rotation axis? It currently affects and only affects the Z axis, and there is no option to modify it.
I’m trying to use it for a simple fabric flutter effect. When I made the skeleton, I was thinking that it would rotate on the X axis of the bone, but I realized after finishing the skin that it rotates on the Z axis.
I’ve solved the problem for now by using “Transform” and “Limit Rotation” in the constraint to make them wiggle in the X axis, but it would be nice if the option to select the rotation axis could be added to the plugin.

Bro @shteeve I guess is time for you to monetize this product, need fixes that i might be so fkn glad to pay for, i mean, upload the addon to blender market dude, we need this addon to work fine, and you need moneeyyyyyy!!!

Sorry I seem to have misunderstood something, this plugin seems to determine the top and bottom based on the position of the two endpoints of the bone, not the local axes of the bone. I’m going to try using it again for some effects. I’m now wondering if it’s compatible with Blender 3.0

It is compatible, but, you get used to some bugs.

Thank you for your reply, I would like to ask one more thing, I plan to use this plugin in 3.0 in the future, are there any very serious bugs that I should know better now? I would be very helpful if you could provide some information on this, thanks!

Well, blender 3.0 have no bugs,
but wiggle bones it does.
What I found is>
You need to save two files, one for bake and a backup cause when you bake the animation, the rig stops working,

Some times the addon crashes, and stops working, so you need to erase and reinstall the addon.

Some times, the wiggle values crashes, and you can not reset them to original values…

Collisions are disable, and you can not activate them.
And… mmm i guess that is all. Can not remember anything else.

2 Likes

Thank you so much for the info, but can you tell me how can i render it? When I hit bake the rig stops working in viewport, if i don’t bake the addon works in viewport but when i render it it is like i am not using the addon (this happens even if I bake), do you have a solution? I really need it for something i’m working on rn. Sorry for my english too. If you have some tips please share them with me.
P.S. I tried both 3.0 and 2.93 versions.

I have an error report, and I think having a github for this addon would be a great way to report these :slight_smile:

The problem only happens with wiggle bones enabled: Animating custom properties that drive other values crashes blender.

The error log:

# Blender 3.0.0, Commit date: 2021-12-02 18:35, Hash f1cca3055776
bpy.context.object.1.1)Muscle = 1  # Property
bpy.context.object.1)Male --> Female = 0.57  # Property
bpy.context.object.1.4) Breast Size = 0.54  # Property
bpy.context.object.1.4) Breast Size = 0  # Property
bpy.context.object.1.1)Muscle = 0  # Property
bpy.context.object.1)Male --> Female = 1  # Property
Saved "ModularStylilzed_Character.blend"  # Info
bpy.context.object.1.1)Muscle = 0.01  # Property

# backtrace
Exception Record:

ExceptionCode         : EXCEPTION_ACCESS_VIOLATION
Exception Address     : 0x00007FF75096F88E
Exception Module      : blender.exe
Exception Flags       : 0x00000000
Exception Parameters  : 0x2
	Parameters[0] : 0x0000000000000000
	Parameters[1] : 0x0000000000000010


Stack trace:
blender.exe         :0x00007FF75096F850  BKE_object_eval_eval_base_flags
blender.exe         :0x00007FF750B3E850  std::_Func_impl_no_alloc<<lambda_a91119d7f28e1e2f0bb371b7e2644610>,void,Depsgraph *>::_Do_call
blender.exe         :0x00007FF750B356E0  blender::deg::`anonymous namespace'::evaluate_node
blender.exe         :0x00007FF750B35690  blender::deg::`anonymous namespace'::deg_task_run_func
blender.exe         :0x00007FF755A9A1B0  tbb::internal::function_task<Task>::execute
tbb.dll             :0x00007FFA2706F690  tbb::recursive_mutex::scoped_lock::internal_try_acquire
tbb.dll             :0x00007FFA2706F690  tbb::recursive_mutex::scoped_lock::internal_try_acquire
tbb.dll             :0x00007FFA270651B0  tbb::interface7::internal::isolate_within_arena
tbb.dll             :0x00007FFA2706A470  tbb::task_scheduler_init::terminate
tbb.dll             :0x00007FFA2706DBD0  tbb::thread_bound_filter::try_process_item
tbb.dll             :0x00007FFA2706DBD0  tbb::thread_bound_filter::try_process_item
ucrtbase.dll        :0x00007FFA41E66BB0  recalloc
KERNEL32.DLL        :0x00007FFA43F054D0  BaseThreadInitThunk
ntdll.dll           :0x00007FFA448E4830  RtlUserThreadStart


Threads:
Thread : 0000759c
ntdll.dll           :0x00007FFA44983DC0  NtDelayExecution
ntdll.dll           :0x00007FFA4493B580  RtlDelayExecution
KERNELBASE.dll      :0x00007FFA41FBD740  SwitchToThread
tbb.dll             :0x00007FFA2706F690  tbb::recursive_mutex::scoped_lock::internal_try_acquire
tbb.dll             :0x00007FFA2706F690  tbb::recursive_mutex::scoped_lock::internal_try_acquire
blender.exe         :0x00007FF750B356E0  tbb::internal::task_group_base::wait
blender.exe         :0x00007FF750B35210  blender::deg::deg_evaluate_on_refresh
blender.exe         :0x00007FF75084CA50  scene_graph_update_tagged
blender.exe         :0x00007FF750A43FF0  wm_event_do_notifiers
blender.exe         :0x00007FF750A2D330  WM_main
blender.exe         :0x00007FF7506AF190  main
blender.exe         :0x00007FF755BC7208  __scrt_common_main_seh
KERNEL32.DLL        :0x00007FFA43F054D0  BaseThreadInitThunk
ntdll.dll           :0x00007FFA448E4830  RtlUserThreadStart


Thread : 00007194
ntdll.dll           :0x00007FFA449837C0  ZwWaitForSingleObject
KERNELBASE.dll      :0x00007FFA41FA29C0  WaitForSingleObjectEx
blender.exe         :0x00007FF75557F130  IlmThread_2_5::Semaphore::wait
blender.exe         :0x00007FF75557E900  IlmThread_2_5::ThreadPool::numThreads
blender.exe         :0x00007FF75557F5A0  std::_LaunchPad<std::unique_ptr<std::tuple<void (__cdecl IlmThread_2_5::Thread::*)(void) __ptr64,Il
blender.exe         :0x00007FF7536BE950  std::_Pad::_Call_func
ucrtbase.dll        :0x00007FFA41E66BB0  recalloc
KERNEL32.DLL        :0x00007FFA43F054D0  BaseThreadInitThunk
ntdll.dll           :0x00007FFA448E4830  RtlUserThreadStart

Hoping this is an easy fix!

fix for wiggle_bones1_5_b16.py for 3.0

Find and replace

ob.animation_data.create()

to

ob.animation_data_create()

should be there C:\Users(username)\AppData\Roaming\Blender Foundation\Blender\3.0\scripts\addons

or edit the one you downloaded and reinstall it

Not sure if it fixes every bugs in 3.0 but at least it can bake

4 Likes

WOW, interesting. This method fixes this problem in b3.0 using wiggle_bones1_5_b16.py, but NOT for wiggle_bones1_5_b20.py. Something @shteeve should make a note of.

1 Like

my gosh I’m a dummy. I just looked and animation_data.create() was never a thing, so thats a straight up case of me misreading the api :flushed:

1 Like

please create a git and charge for this addon. I’ll buy it.

also

upon rendering there are no jiggles. is this compatible with kcycles

3 Likes

In case you don’t know - you need to bake the wiggle before rendering. There should be no issues specific to K-Cycles afaik. Let us know here if you have issues baking - once you get it working you will be comfortable with it.

1 Like

baking applies the physics but keeps it in place. the item is supposed to be moving around the screen. upon rendering the thing crashes.

Is version 1.5.0 the latest version of Wiggle Bones? This addon is so fantastic, I want to try it on Blender 3.2

2 Likes

Since updating to the latest blender version, I can no longer bake the wiggle on any of my animations, as all of them result in this error message:

I have tried many different things, different versions of the addon, entirely different animations, but none will bake anymore, even though they did with the previous blender versions.

Is there any fix for this?

1 Like

there was a change made to the blender api I think where certain values like scene start/end now require integers explicitly whereas previously it used to auto convert float values.

I’m pretty slammed with production work sadly right now, but do note that the bake button in the add-on isn’t strictly necessary to bake things. you can always just use the regular animation baking tools in blender to bake the wiggle effect!

2 Likes

fix for 3.1, I think, no errors, did a few bakes.

works for wiggle_bones1_5_b20.py & wiggle_bones1_5_b16.py


image

animation_data.create() to animation_data_create()

action.frame_range[0] to int(action.frame_range[0])

6 Likes