can you tell me in lazymans terms(i know i'm lazy) what it actually does???
Announcement
Collapse
No announcement yet.
Inverse Kinematics (freeIK) [beta 2]
Collapse
X
-
Originally posted by RBThinkTankThis stuff is way over my head, but I was wondering if you would be willing to help me (milk) use this on the RBTT Venom we made a while back. There are 8 legs (it's a spider) and the calculations would be crazy. I'm fairly certain that replication would be almost impossible for that much data, but ya never know :P
Sure, I can help apply this to the Venom, or at least try to. You must be aware that this system is not perfect, not even close to, and I didn't even have an occasion to test it with complex animations (and won't have too much time to work on it in the nearest future, due to some other projects). It would also require to do some traces to adjust the legs of the spider and therefore can slightly affect performance.
As for the replication - I think it is possible. I have a clever "interpolation" system in mind, which shouldn't require too much data being sent over the network. But I'm a complete noob when it comes to networking, so my idea is probably completely wrongWe'll see.
I'll take a look at the Venom's animations when I get some free time this weekend and then post back to tell ya if I have any idea how to make it work with IK.
Originally posted by nardixcan you tell me in lazymans terms(i know i'm lazy) what it actually does???
Comment
-
Originally posted by Farseer View PostI know what the Venom is, seeing that spider (and a couple of other spider-like thingies released here recently) convinced me to write this IK system, tbh
Sure, I can help apply this to the Venom, or at least try to. You must be aware that this system is not perfect, not even close to, and I didn't even have an occasion to test it with complex animations (and won't have too much time to work on it in the nearest future, due to some other projects). It would also require to do some traces to adjust the legs of the spider and therefore can slightly affect performance.
As for the replication - I think it is possible. I have a clever "interpolation" system in mind, which shouldn't require too much data being sent over the network. But I'm a complete noob when it comes to networking, so my idea is probably completely wrongWe'll see.
I'll take a look at the Venom's animations when I get some free time this weekend and then post back to tell ya if I have any idea how to make it work with IK.
It is MEANT to adjust bones in any skeletal mesh, so the last bone always follows a given point (think: adjusting mech's legs to touch the ground instead of floating in the thin air). Google is your friend too. Type "inverse kinematics".
and when i type it in google i get wikipedia stuff.
anyway now i know it i think it would be fun to experiment with it. if i can get your permission
Comment
-
Was I yelling? Nah, at least it wasn't supposed to sound like that.
And sure, play with it as much as you want, I made it mainly for coders to experiment with it. When I get some free time I'm gonna try to add net-support and some more examples of solvers too - so anyone will be able to easily implement this system in his/her mod (be it a custom pawn, monster, vehicle, whatever.)
Comment
-
Hate to double-post, but editing wouldn't be appropriate here - new info coming:
Due to some nasty issues with UT and Windows (oh yea, M$ ftw) I was not able to prepare any decent update - that will come in a week (or two), when I'm done with sightseeing in Scandinavia.
However I've been doing some tests and got the IK solver to work online. Still no interpolation though, so the movement is as "jumpy" as it was. But technically it works pretty well.
@milk (or anyone at RBTT):
I've also looked up Venom's animations and (hopefully) got some useful ideas how to configure the solvers to adjust spider's legs to terrain. I'm only a little worried about how it will work with that rig - left side of the spider's skeleton has weird setup of bones. Probably an issue caused by mirroring the skeleton in 3d app:
See? The rotation of a joint doesn't match the general rotation of a bone.
I may be able to compensate that in code, though.
Comment
-
Third post in a row. Lovely.
Anyway, if someone is still interested in this - new version has been uploaded, see the first post (or a shortcut to downloads - freeIK and tests).
New features:
- Full network compatibility. Replication is sooo beautiful
- Interpolation. No more jumping from one rotation to another - movement is smooth and clean now.
- Added a test vehicle to the Playground. It's very much in the alpha-stages and the legs don't work exactly as they're meant to (if someone is willing to get a walking mech done that way - it's possible, but FootTracker actors need a lot of polishing) but the IK system works pretty well there (still lacks rotational constraints, though).
Enjoy.
PS. Done some tests with the RBTT's Venom. As you can see here
the affected legs do adjust to terrain, but with current rig of the spider and because of the fact that it levitates over the terrain (UT's collision FTW!) the effects can be a little messy.
Comment
-
Originally posted by Farseer View PostSorry to hear that. Anyway, don't take my yelling too seriously in the future, I often type something in capital letters and it is not necessarly supposed to be some sign of irritation or anything
Expect freeIK updates tomorrow. Probably.
Originally posted by Farseer View PostHate to double-post, but editing wouldn't be appropriate here - new info coming:
Due to some nasty issues with UT and Windows (oh yea, M$ ftw) I was not able to prepare any decent update - that will come in a week (or two), when I'm done with sightseeing in Scandinavia.
However I've been doing some tests and got the IK solver to work online. Still no interpolation though, so the movement is as "jumpy" as it was. But technically it works pretty well.
@milk (or anyone at RBTT):
I've also looked up Venom's animations and (hopefully) got some useful ideas how to configure the solvers to adjust spider's legs to terrain. I'm only a little worried about how it will work with that rig - left side of the spider's skeleton has weird setup of bones. Probably an issue caused by mirroring the skeleton in 3d app:
See? The rotation of a joint doesn't match the general rotation of a bone.
I may be able to compensate that in code, though.
Comment
-
@milk (or anyone at RBTT):
I've also looked up Venom's animations and (hopefully) got some useful ideas how to configure the solvers to adjust spider's legs to terrain. I'm only a little worried about how it will work with that rig - left side of the spider's skeleton has weird setup of bones. Probably an issue caused by mirroring the skeleton in 3d app:
See? The rotation of a joint doesn't match the general rotation of a bone.
I may be able to compensate that in code, though
Yeah your right about the bone setup I'm still learning to rig and animate and didn't fully understand the importance of bone rotation when rigging venom it shouldn't be too big a job to fix the rotations but i have a horrible feeling i'll need to adjust all the animations to suit
Comment
-
Aye, the joints in legs look okay now. Good to see another Maya user, by the wayI should get back to polishing that IK sometime, but I'm kinda overburdened with animation work at the moment... If I can't do this anytime soon, you (or anyone at RBTT) are more than welcome to play with the code and add anything you want.
[advertisement] Also, there should be another IK solver released in the nearest future, done by matariel from BU forums. I don't know exactly how it works, though, or would it be suitable for your spider at all. But you should definitely take a look at that when it's out, especially because of the vehicle it's supposed to support - a darkwalker.[/advertisement]
Comment
-
lmao dude you rock! your work-habits amaze me. Ive released my walker, but just look at how long it took. You basically did the same thing in a TINY fraction of that time; sometimes I really do wonder if I have ADD
looking great, I see that youve faced the same issues that I expected from network replication? I love the work-around; way to disguise slow-replication
I might just start using your solver if you implement axis constraints. Oh and feel free to look at my controller, its the basicIK.u file packaged with the walker over by my release thread. I warn you, it's somewhat messy.
Great work dude!
Comment
-
Haha, don't say that, my solver is nowhere near as functional as yours, it's just a proof of concept, more than anything else. And still terribly unpolished.
I will definitely take a look at your code. I resolved all those replication issues (cutting down the number of necessary calculations per second too) but I'm still way curious what method do you use for the calculations themselves
Comment
Comment