Search - User list
Full Version: Curve Solver offset? (KineFX)
Root » Technical Discussion » Curve Solver offset? (KineFX)
shareware
Has anyone figured out how to add an offset to the curve solver?
For example, let's say you have a joint chain that's shorter than the curve itself. Is there are way to make it travel along the curve?
hektor
Have you checked kinefx_tools on git hub:
https://github.com/kamilhepner/kinefx_tools [github.com]


I was showing something that you're looking for there is a handy HDA for that.

Cheers
shareware
Hey Hektor, this looks great! Will have an explore.
Cheers
shareware
After having a play, I don't think that HDA actually does what I'm after. I need the joints to continue to fit the curve as it is offset. Maybe I'm missing something with it.

Does anyone know of any alternatives? I'm basically rewriting a naive curve solver to do this which probably isn't ideal, but at least I understand what's happening under the hood that way.
hektor
There is an issue in the video where I connect it in the wrong way I believe

This is how it should be connected:



0 Input: Your solved spine
1 Input: Stashed original spine
2 Input: Stashed solved spine


Also, you can take a look inside of it. Applying offset is a very simple matrix operation.
shareware
Hey Hektor, thanks for your help.
I've attached the setup you've described. Maybe I'm being dense but it doesn't seem to output correctly.
What I'd be after is a simple "U" slider on that HDA that would slide the solved joints along the curve.

I don't see how taking the pose difference between between the unsolved stash and the solved one helps with that. Doesn't that just apply a simple transform to every point?
hektor
So sorry Danveen I completely misunderstood it. I've missed that part that you want to slide joints along the curve.
shareware
No worries - I've pretty much solved it with some help from odforce. Though it might be quite slow. I save the joint lengths as an attribute , then use them with primuv() to fit each point using an iterative method. You can plug in an offset in the midst of that.

Wondering now whether I need to convert these fitted points to local-rotations down the chain. Need to test if it's required over simply translating the joints.
hektor
Interesting, I think that your solution with VEX is more elegant than my one I took a stab at it and that's what I've got:
shareware
Using carve is a pretty cool trick, that way you can still use the vops curve solver. Cheers!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB