View Full Version : morph angle deformer and custom attributes... please help

11 November 2003, 02:00 PM
ok.. i'm having this huge problem with morph angle deformer within skin modifier.. max 5.1.. but it look like max 6 has the same problem...

in my case joint can be bent in two directions and for both i have to set different morph angle deform... let's say the starting postion is 0 degrees.. i rotate it to 90 degrees and set morph angle deform.. so far all works perfect... but when i want to set rotation to -90 degrees morph angle "thinks" it's 90 degrees again... so there's my problem... it only takes absolute value into account...

trying to do the same thing with two morph angle deformers did not solve my problem.. i get the same result as when using one deformer...

my guess is that this can be solved by using custom attributes... but i don't know how to do this since i don't really know maxscript...

can anyone help please? i would really appreciate.. my intention is to learn maxscript soon.. but this project has to be done fast..


11 November 2003, 01:49 AM
nevermind people... i found solution :)

if anyone cares or perhaps have similar problem... i solved it with 3 bones for each joint... one that actually bends geometry and two for "angle measuring" connected to the first one with simple expression controller using "if" command....

11 November 2003, 09:37 AM
Hi Peekoot,

Is there any chance you could post some images of what you've done please?
Or if possible send me a simple scene. I'd really like to see how you got around this problem.



11 November 2003, 11:04 AM
ok... no problem.. i'll set up sample scene later.. i don't have time for it right now...

basicly what was the problem?!... when you have joint that can bend in two directions and morph angle, it works just for one direction only... when you try the other direction it again morphs the same way... only this time you don't need morph like that... when done that way joints look like they're snapping...

what i've done is fairly simple... since the joint that drives the morph doesn't have to be the joint that bends the actuall geometry you can use one for weighted vertices and some other for morphing... so i made 3 joints... 1 for geometry and 2 for morphing... those for morphing are constrained to that one for geometry.... using expression float controller i defined starting position and make a scalar value out of it... now i just lock morph joints for morphing at a position i want to... so morph joints actually don't have a single vertex attached to it...

let's say that starting position is 2 (in radians... value in degrees is approximately 2*57) and define scalar "rot" for example (rot is constrained to joint that bends geometry).. and just set condition something like if(rot>2,rot,2) and for other joint if(rot<2,rot,2)...

whoo.. i really hope this makes sense... i'm in hurry... but i'll set up sample scene and send it over to you later...


11 November 2003, 10:44 PM
hey blowtorch... sample scene is ready... pm me your mail where you want it... it is infact whole arm rig... without mesh of course.. ;)


works perfectly btw... :)

i know it's a workaround and it is probably possible to implement it better with maxscript.. but for people who don't know maxscript this is perfect solution...

CGTalk Moderation
01 January 2006, 05:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.