Game Development Community

dev|Pro Game Development Curriculum

IK Groupings, Nodes, & the Magik of Exporters

by Rex · 06/08/2006 (5:14 pm) · 6 comments

I have stated, in probably more than a few places, that you would never see a player shape exported from gameSpace that would load the default SDK sequences...it's a FAQ by users of the Caligari package based upon trueSpace 6x series. I should have quantified the statement by inserting the words, "deforming with the Bones system", after 'player shape'. There is more than one way to build a shape needing Nodes, I've discovered, and it may have it uses, ;). That is to someone who regularily pounds together things in a cast iron vat here at the Heavy Industries werks at RHI; wearing protective gear, of course!

I am a regular Milkshape3d user also and it was during a recent & ongoing help/tutor session with a struggling Community Member that I implimented an idea I had kicking around for a while to see if it would hold some weight. Aligning Joints in Ms3d is a very frustrating endeavor, since there really is no way to affect the Pivot of the Joint other than rotating it, which affects all children's rotations, whaaa...hate that. I have outlined a method to add additional Joints without borking the existing transforms and it works...but, I thought that I would try another approach rather than edit the shape file textually. I sent the shape thru the milkfarm to form a .dts and then sat back and really took a good look at the shape in the ShowToolPro. I used the World Coordinates for the Nodes and looked at each in turn, noting it's coordinates in a spreadsheet. Indeed, my Nodes were all off, and mounting something would have been messy. But I expected that, with the milkfarm's existing tools. Now, time for some IK voodoo.

In gameSpace, you have the ability to build hierarchal objects, or in gSspeak[an IK Grouping]. These 'Trees', once exported, form the standard chain of bones most artists expect to see inside a mesh shape. I would imagine that most Bone type systems organize the objects in some such similar manner. It's a bit of an art & science in building these IK Groupings in gS, in that to form this Grouping, two objects are needed, and there's Parent Pivot issues to be mindful of. One being my mesh object, the second object is a NULL type placeholder, which gS isn't capable of dealing with. Mesh geometry only and Bones...no helpers. You must substitute a mesh object and have the exporter use naming convention to handle exporting,rendering, etc...

Everthing seemed to unfold fairly quickly after that. I placed _dummy objects where I knew my Nodes to be and edited the Pivots to reflect the information I'd documented from STP. I completed my shape in gS and exported to dts. ShowToolPro confirmed my handiwork! All my Nodes ended up as I wanted them, in proper orientation! But I was not finished yet, as I still had to do this work in Ms3d, since that is where I was answering questions. Luckily, I have a few tools in my workBox and pulled one out that reads dts files and exports to Milkshape3d. When I examined the shape back on the 'farm, my Nodes were aligned as I'd intended. Sorry for the digression, and how does this all fit in?

My next big adventure; once I finish this tutoring on Milkshape 2 DTS, I'm going to attempt to recreate the SDK standard skeleton in gameSpace as an IK Grouping and see if it will load the sequences. This won't give me a skeleton I can use in gS[not true, just segmented-and allows for great Scalability], but it allows me to create skeletons I can use in Milkshape...and I 'think' in the past I've been able with this 'flow' to create .dsq's in milkshape that will load into a .dts created in gameSpace, as long as it's from the same flow...and I may be able to scale the object in gS and have it follow the .dsq's! That would be something.

Sorry, no images to accompany this blog....it's just a quick plan.



Rex



testing, testing:
new.photos.yahoo.com/rexpiscator@sbcglobal.net/photo/294928803751178078/0/

About the author

Rex does all his 3D graphics through BrokeAssGames and is currently working on DSQTweaker, Ecstasy Motion, and other interesting projects yet to be revealed. Just ask him about anything DTS/DSQ related, he's happy to help.


#1
06/09/2006 (3:23 am)
And an incredibly confusing but impressive plan it was :)
#2
06/09/2006 (8:14 am)
@Phil

gameSpace animation is confusion -- personified in monstrous form. :(

@Rex

As a frustrated gameSpace and MilkShape user, I look forward to reading more about this. I don't suppose you do contract work, do you?
#3
06/09/2006 (12:24 pm)
gamespace was a complete waste of my money. the only decent tool is the primitive creation widget... pretty neat. Otherwise it only acted as a baldness accelerator. Summers did a good job on the exporter, but had to hack at it a bit to get around the funny bones implementation in the app. I'm glad youre getting good use out of it, sounds like quite a gnarly pipeline though.

Blender is the way to go, what an amazing app. Too bad people are scared of it.
#4
06/09/2006 (12:33 pm)
@Aaron: Everything is negotiatable...I'm kinda 'tutoring' right now with this Ms3d player and animation setup, might take another week, but I've no pressing plans at the moment. I'm fairly open.

@Jameson:gS is actually a fairly good modeller and object animator, especially with Clips. Indeed the Bones were a complete letdown, but I can get them to function. I've looked at Blender before, eh. I'm not 'afraid' of Blender, but I found it to be a 'gnarly' UI...? The UI of gS is truely ahead of it's time. I also find the visual Project Library system another time saver...makes sifting thru files a breeze. I don't feel I 'wasted' my money with gS; more like it was just about enough to spend on the package, no more, certainly at it's lowest entry point achieved...perhaps $199 was as low as it got...

@Phil: thanks, sorry it was bit 'raw' but I was working at the same time and you know how that goes[I'm sure...], with a couple machines running...;). Bottom line; I am the rig doktor...hahahahah.

Cheers all!
#5
06/09/2006 (1:48 pm)
@Rex

Cool. I'll drop you a line, then.

@Jameson

I love gameSpace for making static objects. It's just the rigging, animating and exporting of characters that makes me want to curl up into a ball and whimper.
#6
06/10/2006 (9:47 am)
I agree gS is a cool low poly modeler for sketching up a mesh, but misses out on vital features when you want to refine complete your mesh such as decent UV mapping solution, looping tools, etc. This can be worked around by moving between apps if you can get your mesh to port well, but the standard .obj import/export is very buggy and non-compliant with alias' standard (the luuv plugin cleared that up). The rigging and animation tools are not completely bad, just felt immature compared to the bar set by maya/3dsmax/c4d.

Not sure I really agree on gS' interface, seems a bit hokey to me. The idea is neat but it is faster to have your second hand planted on the keyboard than use the manipulation widgets. Everything being an icon presents the same UI problem that blender does, you need to learn the meaning, position and presentation metaphor of the buttons before you get proficient. I will say that the rotation/scale/move widget is an excellent implementation and is very easy to use, something I've noticed most 3d apps have picked up and implemented themselves, including blender. I'm sure I am speaking with a bit of resentment towards gS and caligari in general as my expectations were not nearly met once I started running into the limitations of the software and my experience with the company's customer service has not been near stellar. I bought it at the $299 price point, I feel like I should have saved up for XSI.

I spent about the same time ramping up on gS and blender and found the feature set in blender to be much more complete and being a coder and very happy with the exposed api and access to source if anything needs to be changed. Blender's UI can be confusing, esp when migrating from other 3d apps but lends itself nicely to internationalization and is completely customizable if you take the time. The latest version has very nice tools for low poly modeling and UV mapping and the meshes move very nicely between apps like zbrush and 3dsmax. The fact that it is free, cross platform and runs super snappy on even older macs completely sells me on it.

Not to start a 'modeling tool war', just wanted to comment on my experience with the application. I wish I could have gotten more use out of it but ended up spending way too much time on workarounds rather than working on models and renders. I am glad you are putting this effort in for those that work in the tool, the more avenues to .dts the better. Thanks for that.