Jump to content

Cloth sim experiments...


Recommended Posts

51 bones? Just guessing... but are the missing two the tail bones? They do serve a purpose to keep the buttocks area from collapsing-- but it doesn't appear they were utilized (properly or at all)... but if you watch some of the animations in MODView you can see examples of where the buttocks area is collapsing.

 

Also, I wholeheartedly support your effort, but if I understand... you are converting the _humanoid.gla file using Noesis to get it back into 3dsMax? If so, the downside to this approach is that GLA is a half-precision format (I.e. about 4 decimal places of accuracy) whereas the dotXSI files and Max scene files use single-precision data (about 6-7 decimal places of accuracy)-- or twice as accurate than GLA. This precision loss is intentional and saves on memory at the cost of accuracy. Further, it can also introduce jitter into your animation-- as @@DT85 has experienced.

 

Then when you export your new animations (based on the imported GLA) and compress this again to a new GLA you'll get a second dose of precision loss. At least that is my understanding.

 

A more accurate solution, IMO, would be to import all of the dotXSI animations into 3dsMax and start from there based on the skeleton I uploaded.

Link to comment

Load a regular model in modview and you'll see 51 bones for them too. I have the same bones included when i compare the list.

So now i've gotten a bit further, after completing the hierarchy (weighted tags and caps), i can load the model in multiplayer, i get a static model (the first frame of the .GLA) until i press forward to move, then the game crashes. Before the static pose, the lightsaber ignition happens as usual, then it switches to static and whatever i press crashes.

Link to comment

It's just named face and yes they are both included. 53 is what i see in max for total bones. Skeleton root is one that gets dumped when compiling, that leaves one remaining and i don't know which one? (face?) even tho it's there, doesn't get included as a bone???

 

Urgh yeah i understand the precision thing, but that's what i have to work with =/. I don't see any glitches in motion with modview from what i can see at least.

Link to comment

Hmm, I never had an issue with crashing. Can you please upload your GLA + GLM for me to look at?

 

 

Also, a conversion table to allow base JKA models use the new GLA can be done. They just won't use any of the new bones.

Link to comment

Sure thing, you'll get a pm

Lol i just did another test, this time i started with a taunt and it worked, i could walk around, but game crashed when i fell into a pit and died. I think i need a PCJ in there, because when i tilt side to side, the hips do a cool flexing motion. Perhads the cranium bone needs to be PCJ?

@@DT85 Rotate the mouse around a bit before doing anything, turn saber off or something (taunt) and then you'll unfreeze the first frame and eventually you'll crash by doing something it doesn't like.

Also what's the root pose i should be using for compiling? frame 21375 or frame 1? if that makes any difference...

Link to comment

For your animations you're exporting with the dotXSI exporter... you mist have the root.xsi pose on frame 0 of your 3daMax animation. When you export, change your time to start on frame 1. When you compile your new GLA... from my testing with @@DT85 's new Assimilate you want your modified root.xsi containing your cape/cloth bones to be at the top of the list... the one on top is the one used to build the hierarchy in my testing.

Link to comment

The actual root animation is found at the last frame of both the JO & JA GLA's.

 

The PCJ's I use:

 

$pcj $flatten
$pcj upper_lumbar
$pcj lower_lumbar
$pcj cranium
$pcj cervical
$pcj thoracic
$pcj pelvis
$pcj face_always_
$pcj Motion
$pcj rradius
$pcj lradius
$pcj rtibia
$pcj ltibia
$pcj rhumerus
$pcj lhumerus
$pcj lfemurYZ
$pcj rfemurYZ 

 

 

I made an icon for it so I could load it easier. Everything seems to work fine except the torso pitch which is a bone axis issue. It's really noticeable when strafing:

 

anhrh2.jpg

 

I believe the code does it by a certain axis, so you need your bone axis to match that of base JKA's GLA. I constrain the Noesis imported GLA to a clean, useable set of nulls for use with JKA. My suggestion is that you also do that to avoid any weird issues.

Link to comment

For your animations you're exporting with the dotXSI exporter... you mist have the root.xsi pose on frame 0 of your 3daMax animation. When you export, change your time to start on frame 1. When you compile your new GLA... from my testing with @@DT85 's new Assimilate you want your modified root.xsi containing your cape/cloth bones to be at the top of the list... the one on top is the one used to build the hierarchy in my testing.

 Frame one is not the usual root pose or davinci pose if you prefer, instead the character has the arms horizontal and legs straight. So you're saying i should export that as the ROOT.xsi?

 

Because what i did, is export the last frame (21374-21375) as the ROOT.xsi. The animation sequence was exported as one big file and i didn't add anything before or after, so it's a 1:1 copy of the imported GLA, no changes in order and modview playback looks like a perfect match, in fact using the same .cfg as original .gla. Or do you mean, skip frame 0 when exporting the whole animation sequence?

 

I'm a real noob when it comes to animations, so excuse my lack of knowledge.

 

@@DT85: so you're saying rebuild the skeleton as a set of nulls and use those as the bones?

Link to comment

My dotXSI exporter assumes the root.xsi pose is on frame 0 for exporting the basepose transforms (where skin modifier is applied). If it is not then you will likely get weird distortions in your animation.

 

So You are exporting one giant file to dotXSI... so you need to copy root.xsi to frame 0 as well.

 

Arms straight out in the T-pose is not the pose you used to bind mesh to bones via skin modifier. So after you copy the root pose to frame 0, change your configuration time settings to start on frame 1... then export.

Link to comment

and how do i copy that pose over frame 0? trackview is taking 2 hours to refresh and dragging keys on the time line seems like a sketchy approach.

And DT you didn't get a single crash when testing? Because i'm crashing on every test run.

Link to comment

and how do i copy that pose over frame 0? trackview is taking 2 hours to refresh and dragging keys on the time line seems like a sketchy approach.

 

And DT you didn't get a single crash when testing? Because i'm crashing on every test run.

Try this:

 

1. Change time range to show -1.

2. Go to the last frame where the root pose is located in your scene... select everything on this frame. Then copy the keys at this frame to frame -1(minus ONE).

3. Go into your Time Configuration Panel and use the Re-scale Time Segment feature to move your entire animation from -1 to whatever to the new start time of 0 to whatever.

4. See 3ds Max help docs on rescaling time.

Link to comment

No crashes whatsoever. Try adding an icon_default.jpg for the model, it could just not like being loaded via console.

 

EDIT:

 

Moving the entire timeline? You're nuts lol. All you need to is:

 

- Import the noesis FBX at frame 1

- Then you go the very end of the timeline and set the last frame as your skin pose

- Go back to frame 0 where it's blank and do assume skin pose. Make sure you create keys on every bone

- Now that the root pose is sorted, move the start frame to frame 1.

 

What max do you use? If it's 2010/2011, I can do this for you If you're having problems.

Link to comment

No crashes whatsoever. Try adding an icon_default.jpg for the model, it could just not like being loaded via console.

 

EDIT:

 

Moving the entire timeline? You're nuts lol. All you need to is:

 

- Import the noesis FBX at frame 1

- Then you go the very end of the timeline and set the last frame as your skin pose

- Go back to frame 0 where it's blank and do assume skin pose. Make sure you create keys on every bone

- Now that the root pose is sorted, move the start frame to frame 1.

 

What max do you use? If it's 2010/2011, I can do this for you If you're having problems.

 

I was not suggesting to manually move the timeline... but the rescale time function method that I suggested does this automatically.  I'm not sure how quickly it would work.  But assuming skin pose on Frame 0 will work also-- as long as the skin pose was set properly for all objects.

DT. likes this
Link to comment

No crashes whatsoever. Try adding an icon_default.jpg for the model, it could just not like being loaded via console.

 

EDIT:

 

Moving the entire timeline? You're nuts lol. All you need to is:

 

- Import the noesis FBX at frame 1

- Then you go the very end of the timeline and set the last frame as your skin pose

- Go back to frame 0 where it's blank and do assume skin pose. Make sure you create keys on every bone

- Now that the root pose is sorted, move the start frame to frame 1.

 

What max do you use? If it's 2010/2011, I can do this for you If you're having problems.

 

Max 2010. I tried the rescale time approach and pasted over frame 0 but it turned the anims to crap on the arms, but i had not reimported and shifted the gla, will try that sometime this week. Also i redid a compile with PCJ bones and it didnt seem to change anything to the funky body movements, i'm guessing it's a problem with the imported bones like you guys mentioned and will require constraining to Archangel's skeleton. I've never had problems manually loading characters, so it's a bit strange that you're able to use it. I usually load them with JA plus character selection. I also tried without any mods and same thing happens. Are you using default mp or a mod?

 

Anyway, i'm wondering if i should still waste time on this, i mean you already have the knowledge to do it (and already did with that cape test).

 

EDIT: I found the problem for the crashing, it's because i had a mod for saber grip, looks like it's not compatible with it.

 

Link to comment

I would encourage you to keep working at it. When you go to last frame where the character is in the root pose... select all scene objects while on that last frame and then go under the character tools menu and select "Set skinpose" then do like @@DT85 said (you've imported your noesis file starting on frame 1) go to Frame 0 and then with everything selected select "Assume Skinpose"... the character should snap to the root pose-- set keys at Frame 0 on everything while you have them selected.

Link to comment

Archangel: i understand the process, the last test i did didn't work simply because i did not reimport the .gla.

DT:: I'll tinker with it some more, my cloth sim needs to be done in max 9, it looks like ass in 2010 or doesnt work at all.

I'll have to put everything on hold until i get a new monitor,, it just died today.

Link to comment

Archangel: i understand the process, the last test i did didn't work simply because i did not reimport the .gla.

DT:: I'll tinker with it some more, my cloth sim needs to be done in max 9, it looks like ass in 2010 or doesnt work at all.

I'll have to put everything on hold until i get a new monitor,, it just died today.

You said Max2010 looks bad... is this because of the cloth plugin? There are some other cloth plugins you might try in Max 2010.

 

For Max2010 check out SimCloth3 v1.84 or nVidia PhysX plugin v3.00 that includes Apex clothing & Apex destruction.

Link to comment

i realise most of us (including me) are more comfortable with max. but seriously if you're trying to do any kind of animation sim, or complex rigging or anything. switch to Maya.

It's really personal preference. 3ds Max is a very capable, high-end 3D package... besides how do you propose to export the Maya file to dotXSI 3.0?

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...