Jump to content

MDB to FBX, FBX to MDB converter


FreshLook

Recommended Posts

  • Replies 353
  • Created
  • Last Reply

Top Posters In This Topic

well, i could be srewing up here but i really thought that there was a maximum of three bones per vertex. browsing the internet didn't reveal any old thread, especially nothing official from obsidian. only thing i encountered was the "vertex has more than 4 weights" error message from expotron, which faerzresssparkles talked about at the neverwintervault forums. so i guess you could be right.

Link to comment
Share on other sites

Well crud, I'm having all kinds of issues trying to get the animation working. I've merged the model parts so it's down to a single mesh and texture. The applied animation in the original .blend file works fine. If I export to an .fbx file then import it in a new session, the .fbx descends twice as far. I tried re-importing the skeleton, animation, and .mdb file, but the resulting animation does nothing.

 

https://www.dropbox.com/s/qa3hhp526ngescc/secret_door1.7z?dl=0

 

I'm not sure what I can do about it.

Link to comment
Share on other sites

@Semp3r, @rjshae: I'm reading the original official Obsidian Expotron guides (in particular, "Exporting Animated Creatures") and it says:


...

4) If a vertex is getting an error, check to see if there are more than 4 bones assigned to it.

5) Cinematic head skin can have no more than 3 bone weights per vertex.

6) Cinematic head vertexes must be weighted at least .026 to one non-face bone (f_bone)

...


There is nothing more said about bone weight rules in the document.


@rjshae: Inspecting plc_du_secret_door_orig.fbx I think the problem is in the export FBX options, in particular the animation options. Make sure Baked Animation is the only checked option. Look at Step 5 of the banner tutorial.


When converting an animated placeable to FBX, only drop the MDB's and the animation file. Since version 0.4, don't drop the skeleton anymore.


I have done plc_du_secret_door.blend -> FBX -> MDB, GR2 -> FBX -> Blender and it worked.


@4760: reading the Obsidian Expotron guides I have discovered that attachment points bones (ap_*) don't count to the bone count limit either.

Edited by FreshLook
Link to comment
Share on other sites

Well I still seem to be doing something wrong. The imported .fbx does have the correct animation now, so I exported it to .mdb plus .gr2 files. Now my override has the model, texture files, renamed .gr2 files (plc_du_secret_door.mdb and plc_du_secret_door_open.gr2). I set up a test module that displays the door placeable in game, which is made usable and runs a script when it is used. The script runs because I get feedback, but the following call does nothing:

 

object oDoor = GetObjectByTag( "plc_hu_secret_door" );

PlayCustomAnimation( oDoor, "plc_du_secret_door_open", 1 );

 

Can anybody hazard a guess as to why it isn't working? I tried it with a 'plc_du_secret_door_open_idle.gr2' in addition to 'plc_du_secret_door_open.gr2', but had the same outcome.

 

Here's the placeables.2da entry:

3000 HU_SecretDoor01 **** 2 0 PLC_DU_Secret_Door **** 0 PLC_DU_Secret_Door PLC_DU_Secret_Door_?? **** **** 0 RESERVED **** **** **** **** **** **** **** **** **** 0 0 ****

Edited by rjshae
Link to comment
Share on other sites

 

@4760: reading the Obsidian Expotron guides I have discovered that attachment points bones (ap_*) don't count to the bone count limit either.

 

The Expotron plugin even throws an error if they have any influence on a vertex.

I actually use (in 3ds max) three named sets:

- skel --> only the bones having an influence on the mesh

- anim --> skel + ap

- mesh --> mesh + COLS

Link to comment
Share on other sites

 

The script runs because I get feedback, but the following call does nothing:

 

object oDoor = GetObjectByTag( "plc_hu_secret_door" );

PlayCustomAnimation( oDoor, "plc_du_secret_door_open", 1 );

 

Can anybody hazard a guess as to why it isn't working?

 

Well, since it's a placeable, I'd use rather ActionPlayAnimation(ANIMATION_PLACEABLE_OPEN);

 

 

Link to comment
Share on other sites

I have been playing with it I got it working. The proper names for the placeable animations are:

  • plc_du_secret_door_idle.gr2: idle animation. Used also for idle animation when closed.
  • plc_du_secret_door_plc_open.gr2: opening animation.
  • There are more, but I don't know if you are going to need them.

X_idle.gr2 is required and the others are optional.

 

For On Used Script I have used vanilla x2_plc_used_opn.

Edited by FreshLook
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...