June 3rd, 2008, 10:10
I've never noticed the bdl files before. It looks like they can also be imported. The uploaded version now allows for bdl files to be opened.
The bones are rigged to the model. After importing I freeze the mesh and hide the bones. To view the bones select the character icon and a rollout on the right hand side should display the character panel. Under the "Character assembly" section change the "Display" type from "Low Res Objects" to "All objects". Moving the bones will now move the mesh. To view the skin modifier first unfreeze all objects (right click in view port and select "Unfreeze all"). Then select the mesh and in the top right hand of the screen you should see the skin modifier. Expand it and you can view the envelope weights.
I'm only testing this in 3ds Max 2008 now so it might run differently in older versions.
June 4th, 2008, 19:04
That is so cool! in theory...
I will try it when I can download it. (Stupid rapidshare... I can't see which numbers have a cat attached)
It works! Thank's a bunch!
*tries a Tingle render*
edit2: Ok, so I tried it some more and on Ganondorf's model (TWW) I get this:
error: Unable to convert: undefined to type: Point3
Last edited by Fluesopp; June 5th, 2008 at 20:51.
June 6th, 2008, 11:02
I just checked out Ganondorf from Demo32_04.arc 0.rarc_dir\archive\bmdv\demo32_ganon_cut 00_gp_1.bmd and it looks ok. I'm not sure where the original character is. Could you post the path to the bmd file?
I forgot about rapidshares validation codes. I'll upload new releases to megaupload from now on.
I was thinking about writing some code in XNA Game Studio and was wondering if there's anymore game info that can be extracted like AI, animation sequences, model linking (e.g. link model, hat, sword), sounds, height maps etc. I'm amazed that some people are actually able to decipher the binary files.
MaxBMD_Beta_04.zip same as the last file but hosted on megaupload
June 6th, 2008, 15:25
If you want to get a challenge, try to find and desipher the file that contains data about the objects that is placed in a level. Objects such as trees, flowers, stones and other interactive things.
Ganondorf from The Wind Waker is in file Gnd.arc.
Will try to find the other Ganondorf's as you mentioned.
edit: PM'ed you with something and tried on Link. Same problem. It freezes on this line:
setNormal modelMesh i normals[i]
I edited the whole part about normals out, and then it worked.
Also, can you explain the "missing textures" command line thing that's in the readme? I can't understand.
Last edited by Fluesopp; June 6th, 2008 at 15:53.
June 7th, 2008, 06:12
It would be great to be able to get the object placements in the level. Unfortunately I've never had much luck desiphering any files. I've updated the code to ignore the undefined normals. I didn't know that bmd files are used by Wind Walker. Does anyone have a list of games that use the bmd format?
To extract the tga files I use an old version of bmdView.exe (source code included). This doesn't extract all the images. If you get a popup that says "Error generating dds / tga image file(s)" then you need to use BmdView2 to extract the rest of the images. For gnd.bmd it's unable to extract three images and creates temporary files in the "Textures" folder (ganon_all.ERROR, ganon_ken_all.ERROR and toonGN.ERROR). Open gnd.bmd using bmdView2.exe and from the main menu select "File/Export Textures...". Set the save type as "tga files" and set the filename to anything (I use "_" as the filename e.g. "_ganon_all.tga"). You then need to rename tga files to exclude the prefix e.g. "_ganon_all.tga" -> "ganon_all.tga". In the "Textures" folder replace the *.ERROR files with the *.tga files with the same name, then delete the *.ERROR files. Run the MaxScript importer again and it should work. It looks like I'm missing the shader settings to get the toon effect (Not sure how to reproduce this in 3DS Max).
If the bmdview2 code was modified to run as a command line application that used the same arguments as the bmdView.c code in my source folder then the previous procedure wouldn't be necessary. I was unable to compile the code using Visual Studio Express and I hardly ever get the missing textures issue when extracting the TWW models so I don't plan on updating it.
BmdView2.exe (installer from somewhere in this thread http://www.emutalk.net/showthread.php?t=26919. It might not be the latest version)
Last edited by Coder; June 7th, 2008 at 06:30.
June 7th, 2008, 12:35
Hm, to me, it never works to extract the textures. I wonder why... I don't even get the .error files. Could it be a problem with my BMDView and it's location?
List over all knowns games that use BMD: Zelda TWW, Zelda TP, Super Mario Sunshine, Super Mario Galaxy and I guess Mario Kart DD. (Do we have a Mario Kart Wii confirmation?)
June 7th, 2008, 13:15
Thanks, I'll have to check out those other games sometime. The BMDView.exe file should go into 3ds max's root folder e.g. C:\Program Files\Autodesk\3ds Max 2008\BmdView.exe. I think I had some problems with the paths on 3DS max versions earlier than 2008 (path can't contain spaces). You could try placing BMDView.exe into the C:\ path then search the MaxBMD.ms script for "UPDATE BMDVIEW.EXE PATH" and uncomment the '-- bmd.SetBmdViewExePath "C:\\"' line.
If that fails you could manually extract the images using BmdView2 and then search MaxBMD.ms for the following
if (ExtractImages()) then
and change it to just
June 7th, 2008, 16:23
Ok, I just found out that 3ds 9 is lower than 2008... That explains why I get the start path spaces error.
But I still don't get extracted any textures when I export anything. No error files either.
I will get back to you when I get 3ds 2009 and try it there.
edit: Ok, with 3ds 2009, it still won't extract the images. It does not even make .error files.
edit2: In some files it assign the wrong files to the textures. In Tetra's case (Zl.arc) it uses the eye texture for the body, resulting in a strange result...
Last edited by Fluesopp; June 7th, 2008 at 23:53.
June 8th, 2008, 04:19
It sounds like BmdView.exe is in the correct path for the script because you should get an error message if it's not found. I've only tried this on windows, what operating system are you using? If you create a folder in C:\ called MaxBMD and add the BmdView.exe and gnd.bdl files and then run the command below from command prompt does it generate the images?
C:\MaxBMD\BmdView.exe "C:\MaxBMD\gnd.bdl" "C:\MaxBMD\\"
When the maxscript runs does it generate the following structure?
- Textures/*.tga (is the folder also missing or just the images?)
I think BmdView.exe probably doesn't support most of the Wind Walker textures so it might be easier to run the script once and ignore the errors. Then use BmdView2.exe to extract the tga images to the Textures folder (using "_" as the filename). To prevent having to rename the texture names all the time you could also update the following in the MaxBMD.ms file.
_texturePrefix = ""
_texturePrefix = "_"
It should work when the script is run again.
June 8th, 2008, 09:53
I'm using Vista.
When I tried to use it now, I got a message saying
"The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more details."
I believe it have something to do with Visual Basic.
Also, that happens when I try to start the program. Are you sure you have compiled it properly, that is, not in a debug mode or something that requires me to install a sdk or something of C# or C++? Or do I simply have to update C++? (Which I believe is the cause of it).
Last edited by Fluesopp; June 8th, 2008 at 10:15.