Updated January 15, 2006
HOME PAGE > AUTHORS > PROSPERO > BOD and 3DS MAX 2.5 (01)
I think with this very complex subject you need to
learn how to walk before before you can run.
The first step is to get max2.5 set with the pre-installed plugins.
This is explained in Reality3D's Tutorial (albeit in Spanish).
You need these files in the 'Plugins' folder of max:
BLDEXP.dle - for export of models to .BOD format
Camera.dle - for exporting camera moves to .CAM format
MBWImporter.dli - for importing complete models of maps in .MBW format
In the last case, the .MBW files are obtained by running the game with the console enabled and entering the command:
...in the console. This will save a .mbw (ModelBladeWorld ?) file in the revelant map folder. When imported into max, you have a mesh model of the entire map complete with objects (but no characters). The only reason you do this is to use the map model as reference for creating camera moves and char animations that interact with the map structure.
The file MSVCRTD.DLL should go into the main max folder.
The file metrocubico.max should go into the scenes folder.
ALSO: In addition to the plugins, you need some extra files with can be copied if missing, from the BOD 'Bin' folder to the main max folder.
Start max and goto File->Export. In the Save As Type dropdown list you should now have the options:
If this OK then you are all set up for BOD modelling.
Part2. Make something basic.
Actually modelling in max is a very complicated subject and I don't pretend to know 0.001% of all it's features, but with a bit of experimenting you can quickly grasp the basic principles. It is a good idea to look in your local bookstore for a dummies guide.
The Visual QuickStart series (Peachpit Press) do a good one. You probably will not find one specifically for v2.5, but guides to later versions will explain a lot.
Max comes with a number of predefined shapes which are the basis of all contruction. When max starts up you will have the 'select object' tool enabled and there will be a panel on the right side with little buttons such as 'Box','Sphere','Cylinder', etc.
Click 'Box' and the button will turn green. While it remains in this state you can create a box with the cursor in any of the veiw ports.
The default veiwport setting (on my copy anyway) is top/front/left/perspective.
While the box button is green, Click anywhere in the 'top' veiwport and drag out a square. Release finger and move the cursor up or down to make the hight of the box. Click again to finish. The box size can be adjusted in the 'Parameters' fields on the right panel. These values should coorespond to millimeters in BOD terms. To check, goto File->Merge and open the file metrocubico.max that comes with the 3DTut. The box in this file is (guess) represents a 1 metre cube in BOD space.
Other shapes can be made in a similar way but some have other elements that you need to create in sequence.
Try the Torus. I used this in my first experiments. It is slightly more interesting than the box and can be used as a donut. (If you make it bigger it also has medical applications)
Before you can export any object you have to apply a material to it.
The model needs coodinates applying to it to act as a reference to the texture (skin). Select the donut and in the right panel click the 'modify' tab (2nd from left). You might have a button 'UVW Map'.
If not click 'More' and select this option from list. When you have applied the UVW modifier you get an orange square around the object.
Further down in the 'Parameters' box there are lots of options. The 'Planar' button should be ticked by default. There are other options here...Cylindrical, Spherical, etc. These set how the 2D texture is projected onto the object. Planar projects it from one point, like a slide projector. Others apply it in different ways, it depends on the shape of the object. Stick to Planar for now. Also the XYZ bottons at bottom control the plane from which the texture is applied. With Planar mapping the texture will appear 'true' on polys that are paralell to the plane from which the texture is projected and will stretch around the sides as they slope away. This can get complicated but for a donut it doesn't matter too much.
Once the UVW modifier is applied you need to assign the Material. Open the Materials Editor (Button on top toolbar with a lot of balls on it).
A window will open with a lot of stuff on it. Click one of the coloured balls at the top. You can either apply this colour to the object or load a bitmap from your files into the editor and apply that. At this stage it doesn't matter, but it is nice to see the object in max with it's correct skin on. Loading bitmaps is not exactly simple....
First make a bitmap in a grapics prog about 256x256 (must be multiples of 2). Make it a suitable all over donuty texture. If you like put a red splodge on it for the jam.. Save it as DONUT1.bmp
Back to max, in Mat Editor, look in the basic parameters bit for the word 'Diffuse'. Next to this will be a colured rectangle. (the colour of the sphere you have picked at the top). To the right of this there is a button. (Hover mouse over it and it will say 'None'.) Click it.
Another window appears. Click 'Bitmap' in this new window and OK. Back to Mat Editor under 'Bitmap Parameters' there is a long button with 'Bitmap:' to the left. Click it. You can then browse for the DONUT1.bmp and open it in the Mat Editor. All being well, the sphere at the top will adopt your DONUT1 texture.
Near the top of the Mat Editor, where it says Map#1 or whatever, change this to DONUT1. This name is important. It is compiled into the code in the .BOD file.
btw. Save your file as donut1.max
The RAS protocol for naming files seems to be:
lowercase 'myobject.max' for source .max files
lowercase 'my object.BOD' for compiled .BOD files
UPPERCASE 'MYOBJECT' for material name
Capitalised 'MyObject' for internal name
This is a good practice to get into to avoid confusion.
Back to Mat Editor. After renaming material, Click the button 'Assign Material to Selection' (little ball pointing the little box). Then, click 'Show Map in Veiwport'.(Checkered cube) The donut should now have your texture.
It might not look exactly how you want it, but don't worry too much at this stage.
OK. There is now enough done to Export the donut, but first you have to give it a 'Group' name. Select Donut and goto Group ->Group and in the window that appears, Enter:
The Blade_Object_ part is critical
The name at the end is whatever you choose. This will be the Internal Name that is used to create the object in BOD. It is nice to add a personal motif to the name. This has a practical purpose in case every one starts making Donut1's which could be embarrasing.
Once you have grouped the object, save the file and goto File -> Export
enter donut1.BOD and click Save. (You must type the .BOD extension)
Two things could happen here.
The export window will go, which is good.
The program will go weird or crash to desktop, which is not so good.
Assuming that it doesn't crash, you should have a donut1.BOD file in the 'Meshes' folder.
Part4. Putting Object into game.
Copy the .BOD file to the 3DObjs folder in BOD.
Before you can create it in the game, (see LevelEditing: Scripting topic for methods) you need to edit the file 'BodLink.list' in the main folder. Add these lines to the end of the file:
The first line is the file path to the *.BOD file
The Second line is the Internal name that you named the Group:
Save and close the BodLink.list
OK, you should now be able to create the donut in a map. If it appears then all is well. You will notice that it has no texture and that you can't select it or pick it up. Also the Player will be able to walk though it.
To get the texture you need to make a .mmp file. This has been covered before, so I won't go into it. You need the original bitmap that you made eariler and loaded into the Material Editor in max. At this point you can resize it as 256x256 is unecessarialy large for a small object. 64x64 is quite big enough for a donut (unless you like giant donuts). If you named the bitmap the same as the Material name, you can use the genmmp tool. Just make a folder in the BladeTools Textures Editor called MyMapObjs or whatever and put all you new object texture bitmaps in it. Then, as you make more objects for a map, keep saving the bitmaps to this folder and apply the gemmmp tool to this folder to upadte the .mmp file. You can put as many textues as you like in an .mmp file. Remember to name the bitmaps the same as the Material name of the object for this to work.
Copy the the .mmp file to your map file and edit the .lvl file to load the new texture(s).
Bitmaps -> MyMapObjs.mmp
The donut should have it's texture next time you run the map.