Spline IK Concept

Animation tools, character animation, non linear animation

Moderators: jesterKing, stiv

Post Reply
Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Spline IK Concept

Post by Pablosbrain » Wed Jun 04, 2003 6:28 pm

I've done a little searching and also put together a mockup of what I think would be a great addition to blenders character animation tools. Splink IK.


Following that link you will find a basic description as well as screen shot mockups as to what it might look like. The mockups don't really change much in the interface to blender. The only real change may be the addition of a curve or spline type object that would be specifically used for this function. I've also added several PDFs to the site as references for some spline information that I have found on the internet. I will continue to try and add more as I find it. I am unfortunately no coder but am trying to follow Ton and others suggestions to document and provide examples for the features I would like added. Please post or email me if there are any questions concerning this idea.

Posts: 185
Joined: Wed Oct 16, 2002 12:06 am

Post by Hos » Thu Jun 05, 2003 7:36 pm


I think the functionality description
could use some tweaking though
(looks a little over complicated)...
was that borrowed from another
application or something of your
own design?


Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Post by Pablosbrain » Thu Jun 05, 2003 9:48 pm

Yeah... it could be fine tuned quite a bit more. It was a combination of ideas from web pages I saw describing the spline IK functionality in other applications. I tried to take the ideas and blenderfy them... using some of the features already built into blender such as constraints.

I am gonna try and do a mockup of how spline-IK may be just a bone that you change a bone type or something and it becomes a curve that you can change the number of nodes on and modify that way. If it were just another bone it would have all the same characteristics of a bone... parents and children and also have access to the constraints. I don't know how you would determine what parts of the curve/spline would affect which vertex groups though... but maybe thats something for someone much smarter than I to figure out. I will definitely try and put together another mockup as well as another description walk through of that.

Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Had a little time

Post by Pablosbrain » Thu Jun 05, 2003 10:30 pm

I had a little break at work so here is a second concept of how the spline ik could work. It is probably a lot simpler than the one previously described.


Basically there would be bone types.. and as far as I could see right now.. only 2 or maybe its just a checkbox to define that bone as a spline bone or even just a toggle button.. same functionality though... but a bone/armature would either be a normal/default bone or a spline.

The spline bone would have the typical b-spline/beziere curve controls and could be parented/linked/constrained the same way a normal bone would. You could even have a normal bone on either side of the spline bone.

Don't know... does this sound better than the first idea? It definitely makes it easier as far as the user is concerned... not having to deal with parenting or targeting bones and such. let me know what you think.

Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Updated Toggle Button

Post by Pablosbrain » Fri Jun 06, 2003 4:57 pm

I updated the 2nd set of mockups with a toggle button called spline. Same as the green IK toggle button for the bones... you just select a bone and then would click the spline toggle button to make that bone a spline bone.

Bone Extrusion:
If the bone is a curve/spline bone extruding from that bone would result in another curve/spline bone whereas extruding from a normal bone would result in a normal bone being extruded.

Posts: 185
Joined: Wed Oct 16, 2002 12:06 am

Post by Hos » Thu Jun 12, 2003 4:49 am


Looks like some of the pdf's that were
on your site are not found now.
The article from rubberbug.com is
quite informative. I guess the one detail
that I'm not quite sure about is a decent
way to skin a spline ... I guess if it the spline
is implicitely treated as a chain of sub-bones
then one would create weight groups for each
of these sub-bones and go that way (made
easier through auto-skinning, hopefully).


Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Yes.. the one piece not defined

Post by Pablosbrain » Thu Jun 12, 2003 2:31 pm

That is the one piece I knew would still be a question.. As you said.. The spline could be treated as a chain of sub bones controlled by the resolution of the curve. I will see if I can't figure out why the PDF links are not all working on my site. And I will continue looking for more resources that may relate to this!

I'm just glad that stuff makes sense to someone out there! I understand the concepts.. just not the actual math taking place. Slowly but surely I'm picking some of it up though.

Posts: 254
Joined: Wed Jan 28, 2004 7:39 pm

Post by Pablosbrain » Thu Jun 12, 2003 3:53 pm

After a little more searching today I've found these two links..

Guru's Lair Cubic Spline & Bezier Curves Library (a lot of information!)

More Links from Povray.org
http://www.povray.org/resources/links/3 ... formation/

Hopefully I'll be able to find a few more. :)

Posts: 69
Joined: Mon Oct 14, 2002 9:56 am

Post by hanzo » Sun Jun 15, 2003 5:01 am

gooood idea man!

Posts: 43
Joined: Mon Oct 14, 2002 6:51 am

Post by malefico » Wed Jul 16, 2003 8:39 pm

This is a very nice suggestion. I think it could be merged (if it wasn't yet)with the idea of using splines to do RVK animation. Instead of applying the spline to a chain of bones, applying it to a part of a mesh.

Posts: 0
Joined: Wed Feb 18, 2004 4:15 pm

Post by zbgump » Thu Sep 30, 2004 12:28 am

Spline IK's! I was just thinking about them so I did a search and found this old thread.

It would really make rigging a character's spine much easier.

Doing it FK is slow, and I always have problems when I try to rig a spine with IK.

Are IK spline/curve constraints in the future?

Posts: 251
Joined: Tue Nov 26, 2002 1:24 pm
Location: Copenhagen, Denmark

Post by Monkeyboi » Fri Oct 01, 2004 5:12 pm

This seems specially relevant now that we have Hooks - it means the splines could integrate perfectly in rigs because we are now able to animate the splines and let parts of it be parented to bones and other objects.

All we need now is the Spline IK constraint and we should be good to go!

Posts: 133
Joined: Wed Oct 16, 2002 3:52 am
Location: Northampton, MA (US)

Post by slikdigit » Tue Oct 05, 2004 6:04 am

yeah, I think we're almost there.
Incidentally, I tried path constraints with offsets to do this, but it doesn't quite work (almost- but not quite)

Post Reply