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:
Bladex.ExportWorld("MapName.mbw")
...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.
PYTHON15.DLL
BBLibc.dll
BUIxc.dll
Raster.dll
Start max and goto File->Export. In the Save As
Type dropdown list you should now have the options:
BladeAnimationFile
[*.BMV]
BladeFile [*.BOD]
Camera[*.CAM]
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.
---------------------------------------------------------------------
Part3.
Texturing
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:
Blade_Object_Donut1
Click OK.
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.![]()
Blade_Object_ProDonut1
Blade_Object_BigTruckDonut436
enough
said.![]()
Once you have grouped the object, save the file
and goto File -> Export
Pick 'BladeFile[*BOD]'
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:
..\..\3dObjs\donut1.BOD
Donut1
The first line is the file
path to the *.BOD file
The Second line is the Internal name that you
named the Group:
Blade_Object_Donut1
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.![]()
---------------------------------------------------------------------
Part5.
Weapons.