So
you want to build a statue to the Raven
gods?
If you're heavily into modifying games
once you get them, this is for you. This
tutorial will explain to you how to export
models from Max to our game format. What
you do with them from there is your business.
You'll need a copy of Heretic II and a
copy of 3DS Max 2 or later, plus our plugin
for exporting models. Obviously, this
leaves many people out as Max 2 isn't
cheap. But, if you're a diehard or have
access to it, it can be worthwhile.
- Jon
Zuk, Heretic II's Lead Designer
Here's
Raven's 3DS Max2 plugin for exporting models
(vmdexp.dle - 10.3KB, ZIPped). Now, before
we get into the explanation, let me clarify
a few things.
Corvus and all the monsters were created and
animated in Softimage. Therefore, you won't
be able to do anything with them in Max 2.
We used Max 2 only for building static, or
simply animated objects for the game. Almost
everything in the editor with "obj_" before
it was built in Max.
So, how do we make a model and get it into
the game? Before you open Max, copy the vmdexp.dlo
plugin into your Max plugins directory. This
is the actual exporter.
Now, you have to build the model. Keep the
poly count very low as this will be an issue
in the game. I'm not going to explain how to
build a model as you should have working knowledge
of Max to do this. But Jeff Lampo was nice
enough to provide some explanation here.
1. Make your model (lets
say you make a toolbox).
2. After the model is made, go to the "Modify
Stack", and select "Edit Mesh".
3. Break apart your object by selecting faces
and detaching them. You have to basically flatten
your object, so think ahead on how you want
it laid out. Don't move anything, just detach
the faces you want to work with. This is a
tedious, but necessary step for the base page
later.
4. After you detach everything, now take the
objects and re-attach them back together.
5. When finished, save your max file as toolbox.
6. Export as poly.htr.
(This is also where you would save your animations
if you had any)
Thanks, Jeff. As he said, after the model is
done, save it, then export it as a .htr file.
Name the file poly.htr. We set up a directory
structure where each model was in its own directory.
Every model was named poly.htr but in a unique
directory. Create a directory in your Heretic
II base called models. For example: c:\programfiles\hereticii\base\models.
Within models, create a separate directory
for each model you create. Example: c:\program
files\hereticii\base\models\box. If you check
your directory box, you'll now see poly.htr.
(For the rest of the explanation, I'll use
box as the object I'm making.)
Next, you'll have to make a base page for it.
Here's Jeff again.
To make your base page:
1. Resave your Max file as (toolbox_base)
2. Make a box shape that is 50 wide, and 100
tall. (The box can really be any size, but
it always has to be half as wide as it is tall.)
This will be deleted later, but it will serve
as your template to place all your object faces
inside.
3. Now go back to "Edit Mesh", select "face"
mode. and select the faces you detached earlier,
you should be able to move them freely.
Start laying them out flat , so you can see
them in the front viewport. When everything
is flattened, lay them inside your 50X100 box
you made. (Now what happens, is when you qdata
your base page, the one you made as 50X100...
it takes the back side of it also, and lays
it out, so you end up with a perfect square,
or a 128X128 page.) So, when you are placing
your faces inside the 50X100 pattern, you can
also turn some around, to fill up the back
side. (You might need to turn on shaded mode
to see what's going on).
4. You can now delete your template box (the
50x100 one in this case).
5 . After everything is laid out perfectly,
re-save the file (toolbox-base), and export
as base.htr (If this is all to confusing, you
can hire me and Jon on the weekends, we charge
200 per object)
Thanks again Jeff. As he said in his
last step, export this as base.htr into the
same directory.
Now, you want to create a .pcx file for your
base page so you can put a texture on it. From
the dos prompt, change to the directory where
your new .htr's are stored. Type in the path
for "qdata" and qdata the base.htr with the
flags –ignoreuv and - genskin. The specifics
are as follows:
C:\PROGRA~1\HERETI~1\base\models\box>C:\progra~1\hereti~1\toolkit\designer\qdata
–ignoreuv –genskin skin.pcx 128 128.
The flags I used are –ignoreuv and –genskin.
Ignoreuv is used as we have newer tools at
Raven, but aren't releasing them. Ignoreuv
is the old way we made skin pages. The –genskin
flag actually creates a .pcx from the .htr
file. The two numbers are the size of your
skin page. If you have a big model and want
lots of detail, make a bigger skin page.
Once you've finished painting your skin page
(saved in the same directory), you'll want
to combine it with the poly into a .fm file.
This is our format for models in the game.
To do this, return to a command line.
First you have to make the .qdt file. This
is a text file that contains the data for making
the .fm. From your command prompt return to
the directory your model is in and type the
following:
C:\PROGRA~1\HERETI~1\base\models\box>C:\progra~1\hereti~1\toolkit\designer\makeqdt
–nogen –fm box.qdt
The flag –nogen stops "makeqdt "from running
"qdata" again. You don't have to include this,
but you'll get an apparent error. The –fm is
the model format. Our original (and no longer
used format) was md2. For simplicity sake,
name your .qdt the same as the directory you're
in.
You're almost done. We just have to qdata it
one more time to make the .fm. Before we do
that though, there's one change that needs
to be made. Open the .qdt file in a text editor
and get rid of the .pcx extensions after "skin".
Save this, return to the command prompt, and
type the following:
C:\PROGRA~1\HERETI~1\base\models\box>C:\progra~1\hereti~1\toolkit\designer\qdata
–ignoreuv –oldskin box.qdt
This creates a tris.fm and a tris.h as well
as a skin.m8. If you open this tris.fm in "QMView"
(which is on the CD), you'll see your model
skinned and ready to be put in the game.
That's all there is to it! Simple huh?
To summarize:
- Create
a poly model and a base page model and
export them as .htr files.
-
Run "qdata" on the base.htr to get your
.pcx.
-
Run "makeqdt" to create a .qdt file for
your model.
- Run
"qdata" on the .qdt file to create your
.fm .h, and .m8 files.
[Back to the top]
|