PDA

View Full Version : Messiah Project Log - Mech by Layer01 - WIP


Layer01
01-15-2006, 01:14 PM
Hi, this is the first of my experimental project logs :applause:
My name is Peter, i'm a student at the Australian National University, and i seem to always end up doing things like this hehehe :p
i'm very new to messiah and animation in general, but hopefully that will change with the help of these logs :)

this is the thread with the "rules" (http://forums.cgsociety.org/showthread.php?t=309964) But of course i cant enforce them so they are more like suggestions :deal:

so without further todo here is the first in what i hope might be many of these.

Mech Project Log


http://i6.photobucket.com/albums/y244/Layer01/Project-screen-shot.jpg

here is the scene file for those interested: Here (http://files.filefront.com/Messiah_robotzip/;4617147;;/fileinfo.html)
update 1 (http://files.filefront.com/Body_rig_Sections04mpjzip/;4630894;;/fileinfo.html) - objects parented to bones instead of using MetaEffectors
update 2 (http://files.filefront.com/Body_rig_new18mpj/;4640538;;/fileinfo.html) - went back to using MetaEffectors, rig is set up and working now


Statment of intent:
I intend to rig and animate this mesh with the aid of MetaEffectors to keep the solid look that is needed for this type of model.
i aim to learn more about using MetaEffectors, Commands, and organising assets.


Things i've learnt so far:

- MetaEffectors are vertex based
- To use Direct weights (under the bone block)
- keep bones properly oriented
- The lag i the leg mesh is not caused by other bones affecting the mesh, it is the MetaEffectors
- To stop the lag in the leg mesh a value higher than 30 needs to be entered. might be lower but less than 20 and it starts playing up again.
- messiah draws its items from the top to bottom, therefore if you parent an item to a bone it is below that bone in the list -> the bone gets overdrawn
- instead of parent make a variable and fill in MoveTo (object,bone,1,1)+AlignTo(Object,Bone,1,1)
- using the * key on the effectors to duplicate them save MASSIVE amounts of time so i dont have to scale them, set them all to "all connected" position them near where a want then etc etc...


Problems:

- messiah draws its items from the top to bottom, therefore if you parent an item to a bone it is below that bone in the list -> the bone gets overdrawn [EDIT] this problem is still there in that i haven't fixed it, but i'm now no longer useing the method that caused it, which was parenting geo to bones, i am now using the original meta effector method. (page 2-3 has more details on this)
- none so far, but more to come soon lol


Please comment on anything at all, as i'd love to hear any tips, tricks and/or thoughts you may have on how i can improve what it is i'm doing.

gsuttor
01-15-2006, 11:45 PM
Fantastic idea. Wish I was using messiah at the moment but to busy with work. :sad:

Layer01
01-16-2006, 01:28 AM
Fantastic idea. Wish I was using messiah at the moment but to busy with work. :sad:

Oh thank god. lol ;)
when i got up this morning to see 50 + views for each post and no replies i though..."ah crap, i've really missed the mark this time"
thanks for breaking the awekward silence :thumbsup:

shadowfork
01-16-2006, 02:30 AM
Oh thank god. lol ;)
when i got up this morning to see 50 + views for each post and no replies i though..."ah crap, i've really missed the mark this time"
thanks for breaking the awekward silence :thumbsup:

-- this is a good effort. Keep us updated and we'll be here when you need help. People might also have questions on your project... so post up frequently!

:thumbsup:

Layer01
01-16-2006, 04:16 AM
ok, here's a little update.

still having mondo troubles with the MetaEffectors and their influence over the mesh. i've set it to direct weighting under the bone deform tab, but i get a wierd lag in the mesh. i cannot understand why, according to the docs the bones should be sourcing all their weight data from the MetaEffectors and they are all set to "All connected"

see the lag in action in this shot
http://i6.photobucket.com/albums/y244/Layer01/Project-screen-shot-02.jpg

i'm sort of stuck on this one problem now lol, and its become a sort of Stubborn battle for me to get it working.

Layer01
01-16-2006, 08:40 AM
Ok after a bit of testing i still cant get rid of the lag, slip or whatever in the leg mesh.
I set all bones that had no effectors on them to a slip of 1. and i still got the problem.
it seems to be something to do with the Min Max values in the Effector block, but i cant seem to solve it by plaing with the numbers, a 1 min and 1 max just makes the whole mesh deform, and if i turn them off i loose the effectors influence...this is starting to drive me crazy lol.

i'm starting to think that maybe the "all connected" mode is buggy or not working properly. but i cant believe i'm the first person to do a non organic animation in messiah. so surely someone must come accross similar problems.

NEWS FLASH!
OK i was about to give up for today when i got angry at it and entered 5000 in the max field (0 in min and scale to max min is on) and what the duce...it worked! :bounce:
now 5000 might be a tad high, but seems when you get above 20-30+ it works.
so thats a big YESSS from me :thumbsup:
and one bit of info to add to the learnt stuff hehehe.

DMack
01-16-2006, 09:19 AM
Great to see this - I don't know how you find the time?! Keep it up!

maks
01-16-2006, 10:52 AM
Hey Peter, the problem with your metaeffector influence is that you have some bones that haven't any weight assigned to them, thus they take influence over the whole mesh, on top of the weighted bones. You should assign an effector to every bone in your scene, this should solve your problem.

Layer01
01-16-2006, 02:03 PM
Hey Peter, the problem with your metaeffector influence is that you have some bones that haven't any weight assigned to them, thus they take influence over the whole mesh, on top of the weighted bones. You should assign an effector to every bone in your scene, this should solve your problem.

even with direct weighting on?
ok thanks i'll keep that in mind as i finish "MetaEffecting" the mech :D

stooch
01-16-2006, 07:07 PM
Make your skeleton. Disable the influence of bones on the mesh of the robot.

parent each piece of the robot to the corresponding bone, keeping the orientation and position.

Dont worry about meta effectors. you will save yourself alot of time...

Julez4001
01-16-2006, 07:12 PM
You got Joe Cosman CDs on metaeffectors?

stooch
01-16-2006, 07:13 PM
Is that adressed to me?

I dont understand why weight and metaeffectors are even in the picture, even if you do hafve something on your mechanical mech that deforms rather then pivots, most of the rig can be just parent based and save you ALOT of time and effort.

shadowfork
01-16-2006, 08:26 PM
keeping the orientation and position.


I was going to suggest this to Peter too, but the objects go all over the place when I parent it to the bone.

Stooch, is there something like 'parent in place' in Messiah? So when I parent something it will not follow the parent's transformation/rotation.

I've been dying to know how to do this in Messiah.

Thanks!

shadowfork
01-16-2006, 08:30 PM
I always thought weightmapping was for organic stuff... and Mechs like these are better off with parenting.

But I want to see someone pull it off anyway, so hats off to you Peter. :thumbsup:

jipe
01-16-2006, 09:33 PM
I was going to suggest this to Peter too, but the objects go all over the place when I parent it to the bone.

Stooch, is there something like 'parent in place' in Messiah? So when I parent something it will not follow the parent's transformation/rotation.

I've been dying to know how to do this in Messiah.

Thanks!

setup -> items -> parent items

check Keep Position and/or Keep Alignment

hope that's what you're looking for?

stooch
01-16-2006, 10:03 PM
yep thats the stuff. for some reason you must use those buttons in messiah, otherwise if you drag and drop it wont parent in place. just a quirk of messiah that i hope is addressed in the future.

shadowfork
01-16-2006, 11:29 PM
Thanks Jipe... however... I think I'm missing the block for the Parent Item:

http://www.ice2big.com/images/messiah.gif

Weird... maybe I should re-install. :curious:

Layer01
01-17-2006, 12:50 AM
Make your skeleton. Disable the influence of bones on the mesh of the robot.

parent each piece of the robot to the corresponding bone, keeping the orientation and position.

Dont worry about meta effectors. you will save yourself alot of time...

Hmmm wouldn't this only work if i had the seperate parts of the mech as different onjects? cause as it is it imports as one big object...as far as messiah seems to be concerned its leg is the same mesh as its head etc etc
unless i'm missing something here.

i thought about re exporting it in chuncks, but i got into this battle with the effectors and wanted to not give in lol ;)

You got Joe Cosman CDs on metaeffectors?
which one is that? the "rigging 2" one...with the dog and tate? i have that one, but i've only done tates body, notb his head yet...i need to do that i know lol, its just so hard not to just jump into it straight away.


anyway thanks for all the support guys :beer:

and shadowfork, its odd that you seem to be missing the block, i'll check in a bit if i have it too.

shadowfork
01-17-2006, 02:33 AM
i thought about re exporting it in chuncks
But isn't this better in the long run? I mean, setting this up will be quicker than modifying each part with a metaeffector.

In theory (if i only got that parent block working)...
you would just have to :
1. parent each object to the bones
2. Bam! All set to be animated.

Against Metaeffecting (6 steps):
1. Add an effector
2. Add mesh to weightlist
3. Add metaeffector tool
4. Grab the metaeffector tool and parent it to the bone
5. Set the area of influence of the effector
6. Assight the Metaeffector tool on the bone block (weight)

But then again, if 'metaeffecting' is faster for you, and you can make it work, then I would definitely like to see your workflow.

:applause:

stooch
01-17-2006, 07:36 AM
yeah you have to make separate objects. but honestly thats far far far less work then what you are doing. and really, i admire your will to solve it, but it shouldnt be your method of choice, why make it harder on yourself?

Grgeon
01-17-2006, 08:59 AM
when you say seperate objects, do you mean he has to save out seperate files for each piece of the model? ie. head file, leg file, arm file, etc... ? Is it possible for messiah to import a file that has all the meshes and for messiah to recognize them as being seperate?

George

My Fault
01-17-2006, 09:47 AM
In Modo if I save an LWO file out with each piece on a separate layer it will bring it in to messiah so that each piece can be used separately. So one LWO file, but separate parts. I assume that an LWO file from Lightwave would work the same way.

Grgeon
01-17-2006, 09:50 AM
Hmm... i wonder if that works the same way with maya...

Layer01
01-17-2006, 01:07 PM
yeah you have to make separate objects. but honestly thats far far far less work then what you are doing. and really, i admire your will to solve it, but it shouldnt be your method of choice, why make it harder on yourself?

well my original reason for sticking with the MetaEffector was this:

In silo the mirroring is a little lame atm, so i had to merge the leg into one single object so i could mirror it (it was that or mirror each individual piece seperatly). add to that, that i had neglected to keep the object centered properly and so the mirroring didn't work automaticaly, so each bit would have to be eye-balled, which would take yonks to do.

and then i'd have to pair them off into sections and save them out multiple times..my lazyness kicks in about here ;)

That was until Alex_K kindly pointed out, in IRC, that i had it all wrong lol, in fact its going to be a piece of cake to seperate the objects in Silo and i wont have to re mirror and re scale etc etc....so yeah, i'll let the effectors drop now...now that i am satisfied that i have them under control and Could use them if need be :p

so atm i'm preping the mesh...and then the fun really begins :cool:



PS:
ShadowFork i checked and i do have the Parent block, so something wierd is going on in your messiah :surprised

AlexK
01-17-2006, 02:39 PM
That was until Alex_K kindly pointed out, in IRC, that i had it all wrong lol, in fact its going to be a piece of cake to seperate the objects in Silo and i wont have to re mirror and re scale etc etc....so yeah, i'll let the effectors drop now...now that i am satisfied that i have them under control and Could use them if need be :p

so atm i'm preping the mesh...and then the fun really begins :cool:

Well, I am glad I could be off help. Can't wait to see that robot moving. :applause:

Layer01
01-18-2006, 09:23 AM
OK new update time.

i've exported my object into individual sections of mesh (all 43 of them) and imported tem into messiah, parented them...so far so good....then i run into this problem

http://i6.photobucket.com/albums/y244/Layer01/project-screenshot-3.jpg

notice how the bones are not visible...except for when they are seen "through" certain mesh :surprised

messiah draws its items from the top to bottom, therefore if you parent an item to a bone it is below that bone in the list -> the bone gets overdrawn
thats a problem obviously lol.

the solution being to use expressions, this one in particular
instead of parent make a variable and fill in MoveTo(object,bone,1,1)+AlignTo(Object,Bone,1,1)

but on top of that the object manager gets a bit messy with bits of object breaking up the bone sections etc..just not as nice visually :p, with the parenting option. so now its a question of whether writting an expression 43 times would be faster than the original MetaEffector way *ack*

anyway here (http://files.filefront.com/Body_rig_Sections04mpjzip/;4630894;;/fileinfo.html) is the scene file to pick apart

isobarxx
01-18-2006, 11:44 AM
Layer01, here's (http://files.filefront.com/Body_rig_07rkmpj/;4631375;;/fileinfo.html) your mech with *working* weights. No billion objects, and only 1-2 effectors per bone. I did a little kick to make sure it works. The rig, she is solid.

Here's some notes;
Bone Deform is set to Direct Weights.
Each bone has a MetaEffector selected as it's Weight (Bone tab for each bone).
One metaEffector per chunk of mech (thigh, shin, etc).
Effectors' Fields of Influence are set to "All Connected".



With Direct Weights, geometry that has no bones will collapse because there's nothing to hold it. That's why the unweighted bits disapear when you go into Animate mode. You can do the rest of the mech; I'm lazy ;)

Second, because the bone deform is using direct weights, *every* bone needs a MetaEffector (or some kind of weight tool). If you have non-weightmapped bones, you'll notice your geometry is laggy and ...scales... as you rotate your bones.



I pulled the Effector heirarchy away from the bones. This means you can move around your bones, add more, move pivots, whatever, without breaking your weights. Most effects that use weight tools (like here) are "static"--they're evaluated when switching from Setup to Animate mode, and after that their position doesn't matter. Sometimes, like with Melt, you can have Dynamic weighting, which means the weight field can be animated.


OK so why do it this way?
1) You can cheat your rig. Want to stretch those legs just a smidge? Like a little bend in your kick? No problem.
2) Batch exporting geometry is a big fat pain in the tuckas.





Happy animating!!!

Layer01
01-18-2006, 01:57 PM
Isobar, thank you very very much :thumbsup:
this is exactly what i wanted to happen with these "project logs" a sort of remixing, where the scene files were available and others could play with them and show how they would do things differently, imho a very powerfull learning tool. so thank you for your time and effort, it is aperciated :applause:

i have a few questions though. some you may have already answered but i'm not sure so i'll ask them anyway :p

1) is the mesh disappearing between setup and animate, is something to do with direct weighting and not having MetaEffectors set up?

2) you have all the bones preceded by "aaa" is there any reason for this other than personal choice?

3) you have a LOT of MetaEffectors in areas where i had only one, is there any reason for this too? You have 4 in the calve where i had one, i see you added some movement to the foot in areas i hadn't thought of..i like it, but even so it seems like a lot or am i missing something?

4) when you say you "did it this way" so you can cheat in the animation, by squash/stretch etc.., how would this be done i am not sure i see how you could cheat if the ME's are influencing all the mesh...i understand the idea just not how you'd do it

again thank you for your input and help, i will chew through the file tomorrow in more depth :)

isobarxx
01-18-2006, 06:35 PM
L1, 1) you are correct sir! There's no weight tools to hold the geometry in place so the points collapse to 0,0,0.

2) imo it's a good habit, so if you have another character in the scene you can differentiate between them.

3) not really, it just took me that many to tag all the bits of mesh.

4) The metaEffectors are becoming the weight fields for the bones, right. So let's say you wanted to have a bendy thigh.

First switch your Bone Deform over to Factored Weights.

Then split the thigh bone and use the same metaEffector's weights for both bones. Now you've got overshoot on your knee rotation. Now make those thigh bones muscle bones, add a couple nulls, and you've got stretchy legs. You can still do whatever you like within each broad chunk. example (http://files.filefront.com/Body_rig_07brkmpj/;4632807;;/fileinfo.html) That worked better than I expected. It actually looks kinda cool because the shin guard stays stiff.

Layer01
01-20-2006, 02:23 PM
This will be the last update for this week, as i'm going to the coast next week :wavey:

anyway i looked over isobar's file, and came up with this (http://files.filefront.com/Body_rig_new18mpj/;4640538;;/fileinfo.html)
and i'm happy to say its all working A OK so far! :cool:
so thank you all for your help so far, its getting there!
:beer:

I ended up using MetaEffectors, its funny as this is where i started, i tried parenting, even had my mech split up into seperate meshes (would've stuck with that except fot the Gfx draw problem) and was about to look into expresions lol. but this ended up working quite well and was pretty easy to set up.
1) just set up the right side meta effectors
3) use the names of the bones to make the effector names, copy paste.
2) mirror/rename and tweak and you have the left side done pronto
4) select the effector in the bone block. done.

incidentaly isobar i think i solved the issue you had with the effectors loosing their min/max settings. i think it has to do with how the effectors are parented to the bone defform...haven't had to much time to experiment but i dont seem to get it, so you may want to check my file.
i also tried your split bone method (bending mesh etc) but its not in this version of the scene, still working it out atm.
oh yeah and i couldn't get the "aaa" 's in front of the bone names because i could fine no way to add it to their begining, but i will use that sort of thing in the future i think :)
i'm also pretty happy with how the list is looking, nice and organised :arteest:

http://i6.photobucket.com/albums/y244/Layer01/project-screenshot-4.jpg

my main concerns atm are getting some IK into the leg area and "pre leg" bit..and the leg shields (telescopic) and sorting out the rig in general so it all moves as easily as possible. i have a feeling a lot of those nulls are not needed or could be placed in the hierarchy better...i went a bit Null crazy lol :p and no doubt i am not being efficaiant with my bone placment/numbers, though i did try to keep the number down to what i thought wold be the minimum.
So feel free to pull it all apart and make comments on how you think it could be done.
then i have to replace the bones with my custom controlers *yay* and then..well we'll see how i'm doing then.

one thing that struck me is this monster may not have been modeled in the best way for it to be animated lol, but seeing as it was my first ever mech i'll forgive myself hehehe.

i think i will watch some Cosman VDs on my trip..brush up on some skills as i have/had forgotten how to do IK lol *oh dear*
not sure if where i'm going will have the net, so if not i'll be back in a week,
See you guys! :thumbsup:

stooch
01-22-2006, 01:05 AM
So I dont understand? why do you need to see the bones? you know you can slap on armatures or control cages so you can easily select different parts and then lock the body so it doesnt get in the way.

Layer01
01-28-2006, 03:35 AM
So I dont understand? why do you need to see the bones? you know you can slap on armatures or control cages so you can easily select different parts and then lock the body so it doesnt get in the way.

ahhh good to be back :)

why would i want top see the bones..well i guess i could live without "seeing" them and use armatures but i'm still tweaking stuff as i go and thats made a lot harder when i cant see what i'm tweaking, plus its sort of annoying to look at...its not a complete show stopper but its not an ideal situation either. that and i'm just fussy :D

Geco
01-28-2006, 06:11 PM
hello Peter,

http://img219.imageshack.us/img219/9153/bodyrigsections049yh.gif


if this is what you want see, just change the order of the items.
messiah draw the items in the WorldView in the same order you put it in the item list, so put the geometry over the bones in the item list.
you should put your model in ___Geometry___, and replace the items in the 3D space.

i hope this helps.

Layer01
01-30-2006, 04:29 AM
you should put your model in ___Geometry___, and replace the items in the 3D space.

well the way i had it was all the "geo bits" were in ____Geometry____ but as i parented them to bones they jumped to the bone list...or in other words out of the Geometry null and into the effector null, where they placed themselves under the bone they were parented to.
I looked but found no solution to this, as moveing the geometry from out of the bone list broke the parenting. and parenting the bone to the geometry gave funky results.
in the end i set it all up with one mesh and used metaeffectors...wether this was the optimum way of doing it i'm not sure..but it seems to work so far.
Of course if there is a fix/workaround for the bone>geo parenting gfx problem i got i'd love to hear it.

cool gif btw :thumbsup:


also just in case anyone was wondering why updates have been a little slow recently, apart from being away for a week, i got back to find the weather had decided to become stinking hot...all day and all night, this has led to a massive lack of sleep and motivation lol, that and my PC belches out hot air causing the room to become unbearably hot.
so..weather permitting, there will be more updates comming soon :D

AlexK
01-30-2006, 06:46 AM
Of course if there is a fix/workaround for the bone>geo parenting gfx problem i got i'd love to hear it.
Well, as I said before, you could always use expressions to parent your geometry to your bones. That way you are completely free to move your geometry around in the item list.

CGTalk Moderation
01-30-2006, 06:46 AM
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.