PDA

View Full Version : MORPH LINK EXPRESSION Need Help here



silviotoledo
06-21-2010, 08:40 AM
Ok, I need an expression applyed to a bone that automates the morph ( in real time ) same way as Joint Morph Plus

Using Morph Link in Builder, this is what I get:

mapRange([SKELEGON.Left Hand A.Rotation.H],0.000,90.000,0.000,100.000)

Map range ( NAME OF SKELEGON. MINIMAL ROTATION,MAX ROTATION.MIN MORPH,MAX MORPH )

The question is:

Wheres's the name of the morph it should apply?

How do I construct this expression? Help needed.

RebelHill
06-21-2010, 10:55 AM
You dont enter the name of the morf in the expression... expressions drive channels, so it needs to be applied to the appropriate morfs channel.

silviotoledo
06-21-2010, 10:58 AM
So, you mean I must apply the expression to the Endomorph and not to the Bone? It makes sense, but why not possible to have the expression in the bone itself or object?

silviotoledo
06-21-2010, 11:05 AM
Thanks Rebell!

Just applied the expression to the Endomorph channel and it works fine and realtime :)!

It solves me a lot of pain, once Joint Morph Plus interface will not be good to accept several instances of morphs 'cause it's a bit small.

Hieron
06-21-2010, 06:35 PM
hmm interesting...

Could I do this as well? :
Imagine I have a null moving from 0 on frame 10 to 1 meter on frame 20.
Can I drive a morph automatically that it will go from 0% morph on frame 9 to 100% morph on frame 10, going smoothly to 0% morph again when 1 meter is reached on frame 20?

(frame #'s don't matter to me, only as example..)

I guess I'll have to read up on expressions.. Never used them but would make my life easier...


Sorry for the hijack...

RebelHill
06-22-2010, 03:35 AM
Well... no

Because at both frame 9 and 10 your null would be at 0m... so you cant tell the morf channel that the morf is at 0% with the null at 0m, and 100% with the null at 0m.

But linking it to be 100% at 0m, and 0% at 1m... of course u can.

Assuming the X axis of the null is used...

1-[Null.Position.X] (only works between 0-1m)

or

mapRange([Null.Position.X],0,1,1,0) (where the first 2 numbers {,0,1} represent the nulls value of 0 and 1m, and can be substituted for any values of any of its channels)

Hieron
06-22-2010, 04:12 AM
thanks for the info... will think about it, perhaps there is some workaround. Right now I am dragging the keyframes in scene editor and copying them. Just alot of work for all my objects and as motion, morph and opacity are all driven in around that frame range. It would be nice to just slide around maybe 2 keyframes and have all the others automatically match.

silviotoledo
06-24-2010, 06:37 AM
Another way for doing that is to animate the moves itself and then uses cyclyst controlled by an slide to EDIT the animation according to the scene requirements.

The problem using cyclist is that lightwave does not do reference to external scene files. So the animation must be done inside the same scene. There was a promisse for CORE to reference externally.

I've aso tried set driven key, but it does not update in realtime.