faster ik and deformations

Animation tools, character animation, non linear animation

Moderators: jesterKing, stiv

What do you think of current char animation features?

Poll ended at Sat Jun 14, 2003 8:16 pm

I'm happy
0
No votes
I dont' care
0
No votes
Blender needs some of the tools mentioned in the post
5
42%
Blender needs all of the tools mentioned in the post
7
58%
 
Total votes: 12

solmax
Posts: 309
Joined: Fri Oct 18, 2002 2:47 am
Contact:

faster ik and deformations

Postby solmax » Wed May 14, 2003 8:16 pm

character anmation tools need to be beefed up a lot in blender. this concerns the IK system, bone deformations and user friendly tools like sliders that drive various channels.

- ik: i definitely need more control over ik. i dont know what system the guys use, but id like to see controls over ik solver plane and such.

- bones: deformations can be a lot faster, just have a look at lightwave, maya, messiah etc. what bothers me a lot: even if i dont move bones that deform a highpoly mesh, viewport becomes extremely slow - anyone knows why that is? i mean i can live with slower interaction when i actually animate and move around bones, but still i wanna spin the view fast.

what i also miss a lot is the ability to lock rotation axes of bones and define min/max rotation angles. this would speed up calculation of ik, i think, and gives me the desired control over my rigs.

the new action constraint is a nice idea but implementation sucks - i have to mess around with minmax values way too long until i get the desired results. tell me im stupid but also tell me what I'm doing wrong.
maya "driven key"-like tool would be great and far more universal. how about a cahnnel connection editor? this would be the greatest thing and make virtually any animation system possible. give me some viewport sliders for control and im the happiest animator on earth.

Hos
Posts: 215
Joined: Wed Oct 16, 2002 12:06 am

Re: faster ik and deformations

Postby Hos » Fri May 16, 2003 5:19 am

solmax wrote:- ik: i definitely need more control over ik. i dont know what system the guys use, but id like to see controls over ik solver plane and such.


How do you envision the interface for the extra control?
Do you have a screenshot from another package where
you think it was done right?

solmax wrote:- bones: deformations can be a lot faster, just have a look at lightwave, maya, messiah etc. what bothers me a lot: even if i dont move bones that deform a highpoly mesh, viewport becomes extremely slow - anyone knows why that is? i mean i can live with slower interaction when i actually animate and move around bones, but still i wanna spin the view fast.


Yep, something is wrong ... seems either related to subsurfs
or vertex keys, or something. One day I'll have to read the
docs for a decent profiler and find out where the code is
spending the most time.

solmax wrote:what i also miss a lot is the ability to lock rotation axes of bones and define min/max rotation angles. this would speed up calculation of ik, i think, and gives me the desired control over my rigs.


Where do you see this fitting in the current interface? Would this
require selection of joints in pose mode perhaps, something in editmode,
a type of constraint, or do you have something else in mind?

solmax wrote:the new action constraint is a nice idea but implementation sucks - i have to mess around with minmax values way too long until i get the desired results. tell me im stupid but also tell me what I'm doing wrong.


Yes, it is awkward and un-fun. I think 'get min/max from current bone position'
buttons would make this suck less.

solmax wrote:maya "driven key"-like tool would be great and far more universal. how about a cahnnel connection editor? this would be the greatest thing and make virtually any animation system possible. give me some viewport sliders for control and im the happiest animator on earth.


What is this 'driven key tool' -- got a screenshot?
Is this like the inverse of a constraint? (an
actuator?) Do you have an example/screenshot of a
currently existing 'channel connection editor'? Where
in the current interface do you see the viewport sliders
fitting -- part of an existing window type, or a new
one altogether?

All interesting suggestions.

Chris

Pablosbrain
Posts: 356
Joined: Wed Jan 28, 2004 7:39 pm

Spline IK

Postby Pablosbrain » Fri May 16, 2003 3:26 pm

The main character control I'm looking for is Spline IK as in lightwave for rope, tails, toon arms and stuff... Unfortunately I'm still searching for some technical docs on how it would be implemented.

hanzo
Posts: 71
Joined: Mon Oct 14, 2002 9:56 am

Postby hanzo » Sat May 17, 2003 5:50 am

dude I apsalutaly agree! :roll:

blenders armature system is good but it could be great those tools would help it along a bit and (my idea) bonecontroler, I know I know blender can do it but not nearly as simple :twisted: and strate forward, or without
a head ach..

aphex
Posts: 33
Joined: Thu Mar 27, 2003 12:40 pm

Re: faster ik and deformations

Postby aphex » Sat May 17, 2003 11:04 am

Hos wrote:
What is this 'driven key tool' -- got a screenshot?
Is this like the inverse of a constraint? (an
actuator?)

Chris


Hi,

As I understand it, "set driven key" allows you to link one value (for example, bone.xrot) to another value (bone001.yrot). It also allows you to use expressions so that it isn't just a straight value1 = value2.

I've been considering a python constraint to do this, or alternatively, attaching a script to the armature in Script Buttons that executes on each update... it all depends on which evaluates quicker! :wink:

Either way, the armature python API needs to be fleshed out more before things like this can be implemented.

aphex

Noiprox
Posts: 10
Joined: Mon Oct 14, 2002 8:43 am

Postby Noiprox » Tue Jun 03, 2003 12:26 am

I believe these Maya "set driven key" things are called "expression controllers" in MAX - in my opinion a far more descriptive name. I have long thought Blender should have this feature. It may already (sortof) be possible to do this with a Python script, but that is a cumbersome and limitedly effective way to go about it. We would like expressions which control object attributes in real-time and perhaps some easy way to exclude manual manipulating of the objects' position, orientation and scale.

Expression controllers are useful in a lot of situations. Imagine, for example, a car which turns it's wheels automatically as you move the car around, or a system of gears which all rotate together as you rotate any one of them. They can also be used to a limited extent for muscle bulging and the like.

In fact, MAX allows expressions for essentially any attribute (any IPO key), so perhaps as an IPO "curve" type we could have "expression", which determines the value of the IPO curve in real-time according to a Python expression would be a good way to implement them.

Python has an eval() function which evaluates Python expressions, so it should be very easy to implement expression controllers in Blender (just as a text box in edit mode where you enter an expression). In fact, if someone decides to do this, might it even be possible to have it in 2.28? I am not well acquianted with the internal workings of Blender, so perhaps I am underestimating the amount of work it would involve to implement this feature, but surely it is worth some programmer attention...

--
Dieter Buys

matt_e
Posts: 898
Joined: Mon Oct 14, 2002 4:32 am
Location: Sydney, Australia
Contact:

Postby matt_e » Tue Jun 03, 2003 12:46 pm

Expressions would be a great addition to Blender. I've been learning to use Shake recently, and the expressions in it are so powerful even for a total newbie like me. I wanted to jitter the opacity of a layer making it semi rendom, but becoming more opaque as time goes on. I fiddled for ages with the animation curves, but eventually had a quick look at the expression manual, and typed in the 'transparency' (or something like that) text entry field: time*noise(5) which will generate a random value every frame, multiplied by the frame number so it gets larger on average as time goes on. I'd love to be able to use things like this to (for example) control IPO curves in Blender.

Hos
Posts: 215
Joined: Wed Oct 16, 2002 12:06 am

Postby Hos » Tue Jun 03, 2003 6:24 pm

OK, usual question: where do you see this fitting
into the blender interface? How would the
arguments of an expression be specified?
(A pull down menu? Typing in a name?
are the arguements restricted to IPO curves?).
Would these fit in with the constraint buttons
as a new constraint type with its own special widget?
How about a mockup? ... and screenshots
from other apps are always useful.

Regards,
Chris

Noiprox
Posts: 10
Joined: Mon Oct 14, 2002 8:43 am

Postby Noiprox » Tue Jun 03, 2003 9:35 pm

Image

All right, I made this mockup. I think making it a constraint would be nice, although a good implementation of this would render all the other constraints obsolete. There is a slight problem with making it a constraint, namely that expressions should be able to control any IPO, whereas the other contraints only affect location and rotation.

The expression in the mockup would rotate a wheel of a car as you move the chassis. It could very possibly be incorrect, I have not thought it through (it's just a mockup).

--
Dieter Buys

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

Postby slikdigit » Wed Jun 04, 2003 1:21 am

rotational limits could either be constraints or be defined within the bone in edit mode (I'd prefer a costraint) you could lock translation the same way.
action constraints suffer from being relative to global position of the bone within the armature context; it would be better to have it relate to local bone rotation with the bone's parent as the frame of reference (think of a bicep bulge; you want it to happen when the forearm moves relative to the bicep-not when the character stands on its head). Then again, perhaps what is needed is a way of specifying scope within the action constraints, or expressions as a more general (and elegant ) solution.
(PS: for local rotations you can workaround the current system by using multiple armatures- but its 'clunkier' and takes longer to set up)


Return to “Animation”

Who is online

Users browsing this forum: No registered users and 2 guests