building muscles.

   5199   3   1
User Avatar
Member
53 posts
Joined: July 2005
Offline
howdy, i got a few questions.

i have been trying to construct a single working muscle that ill be able to reuse as an operator later. that will be able to be snapped into position by piping 2 nulls into the operator. ( a top and bottom null ). the top and bottom nulls of the muscle are parented to different bones so that when a limb bends the muscles can stretch/bulge.


so what im thinking of doing is, making a path with 2 verts. both its points are at 0. then when i pipe in nulls the verts of the path will snap into position where the nulls are.
i then make more nulls that follow the path orientation, and position them somewhere along the curve. ( lets say i have 3-4 nulls along the curve )

this is all to be placed nicely within a mesh that will be deformed.

then. this is where i get kind of confused. but what i want to do is make a geometry operator, and within it will be magnets that will take up the exact positions of the nulls along the muscle curve. so that when the curve gets shorter, the nulls on the muscles come together, and the magnets bulge, and deform the character.

the problem is however, that i have no idea how to grab/copy the exact position of the nulls in world space that are following a curve, and paste the relative refs to sub object level operators. i think that once i can do this then the rest should be a breeze.

but since the nulls along the curve never have a changing transform in world space, i cant use that as a reference for the magnets to use.

cheers.

{EDIT}

just wanted to show, that the magnets would be where you currently see the spheres. the spheres are snapped to nulls. and its those nulls i cant gather the worldspace coordinates of.
http://ambient-whisper.cgcommunity.com/images_dump/neato/muscles-02-divx.avi [ambient-whisper.cgcommunity.com]
-m-k-
User Avatar
Member
51 posts
Joined: July 2005
Offline
hey ambient
maybe you could try this, it works for me.
*go into CHOPs and put down a geometryCHOP-
SOP - would be the point1SOP of the null object
Method - animated
Transform object - /obj/null1

*then go into SOPs were you have the magnetSOP and put down a channelSOP after the metaball you are using for magnets. ( i presume this is what you are doing)
CHOP - is the geometryCHOP you just put down
Method - animated
Channel Scope - t
Attribute Scope - P

Now your metaball will follow the null even if it is on a path. after the channelSOP i believe would follow the magnetSOP.

hope this helps…….works for me.

betty
User Avatar
Member
7871 posts
Joined: July 2005
Offline
The vtorigin(“”,“/obj/mynull”) expression can obtain obj world-space coordinates without regards to parenting. Since this function returns a vector, you can access its individual components like so:
vtorigin(“”,“/obj/mynull”)
vtorigin(“”,“/obj/mynull”)
vtorigin(“”,“/obj/mynull”)
User Avatar
Member
53 posts
Joined: July 2005
Offline
posted before seeing the new post thanks guys ill try both suggestions ( bettys worked ). time to try the other method and see which is faster

thanks again
-m-k-
  • Quick Links