Milkshape Modeling Tutorial for Return to Castle Wolfenstein Part II – Skinning and Exporting

Now that you know how to model, you need to know how to skin and export the model. First off, lets do some skinning.

Now before you can actually skin the model you need to assign groups. What’s a group? Well it’s a set of faces that will be textured together. This doesn’t mean they will all have the same texture (i.e. all green). It means that they will be moved around together on the surface of a targa file for texturing. Never mind you’ll see. Well lets get grouping.

Now with a little effort you have created yourself a nice helicopter: (This is a circa 1942 sikorsky – not the seaking we were modeling)

Very nice.

Now we need to assign groupings. To do this the first thing we need to do is decide what we want to make a group. Once we know, then we need to select the faces of that group. You want to make a group out of the things that you want to be textured seperately.

Let’s select the rotor assembly. Now what we need to do is to assign this as a group. To do this go over to the right hand side of the screen where the tabs are. Now switch the tab to the Groups tab. Here you’ll see a lot of new buttons. The button we want is the “regroup” button.

With the faces of rotor assembly selected we are going to hit the regroup button. Now the words “regroup 1” appear in the white box. You can change the name to something more appropriate. Lets change it to rotorassemb. To do this we type in the name in the empty box next to the rename button. Then hit the rename button. That’s it! We created a group for the rotor assembly! Woooohooo!

Keep doing this until you have made ALL the faces associated with a grouping. EVERYTHING must be associated with a group. Check to make sure. Once you have all your groups use the “select” button under the Groups tab to select all the faces which belong to groupings.


Texturing the model

That’s it. You grouped the model. Now for the skinning.

Click on the Materials tab. You see a black box. Hmm. To create a new texture just click the “new” button on the bottom. Type in a name down there and hit the rename button to name your new texture. Each texture is a targa file. This is a picture file type with the extension .tga. Targa files come in two flavors. 32-bit files contain an alpha channel and the 24-bit ones do not. Don’t worry about that here – just use any file with the extension .tga. When you clicked “new” a cool white ball appeared. This is the mystical texture ball.

Click on one of the two large buttons that say “none” (not the smaller ones). Now an open file box appears. Milkshape wants to know what file to load as the new texture. Give it a .tga file. The name of the texture now appears on the button and the mystical texture ball is now proudly displaying the texture you selected.

Now we need to assign each grouping to a texture. Oh, you can have a number of textures for each model, however, it’s easier if you have only one though.

To assign a group to a texture you must have the group selected (highlighted red in the ortho views). You should select the group using the select button on the Groups tab. With one group selected go back to the Materials tab and hit the “assign” button.

Go back to the Groups tab and you should now see the name of your group next to the name of the material in brackets. This means that your group has been assigned to that texture. Repeat this for all the groups you have created until they all are assigned to a texture.

Can you see a texture on the model? If not try right clicking on the 3D view and select “textured”. How about now?

O.K. At this point you need to select everything on the model. Make sure it is ALL highlighted in red. You should do this by selecting all the faces on the model. Now under the Window menu go to Window ->Texture Coordinate Editor. This brings up a new window with your texture in it.

If your texture happened to be way too big for the window you can scale it down to something you can see by using the scale button there on the side. Just type in a decimal value and hit the scale button to bring down the size of the texture. You’ll need to be able to see the whole thing.

So what do all the buttons do?

The first things to look at here are the buttons that control the group and view. The first drop down box you see controls the group and the one underneath it controls the view. You can choose which group to texture in the group drop down box. Then select a view you want to texture. Be aware that you CANNOT texture a group in more than one view. (i.e from the left, right, top, etc.) If you want to have different textures on each side of your grouping you need to go back and split up your grouping into smaller groups.

Select a group you want. If the grouping in not selected (i.e. Red) in the othro views nothing is going to happen. That’s why we selected everything. Now pick a view to texture. In this model I made a group out of each side of the helicopter so that I could texture each side separately. Hit the button called “remap”. Now a representation of that grouping in that view appears. It may look funny because it’s stretched out.

If you check the button that says “Redraw” you will be able to see the effects of moving your texture around in the 3D view.

See the select button. That button is used as a sort of vertex selection here. Click it and then left click drag over a group of vertices you want to move. Then click the “move” button and move ‘um around on the texture.

You can scale the model too using the “scale” button at the top.

If you want your grouping to appear in a predefined area on the texture coordinate editor click the region button. Now left click drag to make a square. This is a region where your grouping will be mapped to. Now go back and hit the “remap” button. See. Your group is not defined to the square you made. This is useful when your picture has a lot of ‘subpictures’ for aligning groups too.

Skin each group. The shape of the groupings don’t have to be realistically shaped here. You can stretch them out, etc. What’s important is how they look on the model so go and check the 3D views now and then. You can even shrink the group down using the scale button to a little tiny dot. You can make the texture stretch over parts of the model this way. Experiment.

Creating the control file

DA DAH!! You skinned it. It looks great. Now we need to export this puppy so that we can use it in wolfy.

Go to the Tools menu and select Tools -> Quake III Arena -> Generate Control File… Now save the file as whateveryouwillnameyourmodel.qc.

What the…? What is that that popped up on the screen. It a text file that is generated by Milkshape What Milkshape is really doing is asking you about the model before you can export it correctly. THIS MUST BE FILLED OUT BEFORE EXPORTING. The model will not export any textural information if you do not fill out this text file correctly. (This is why models are often gray when exported) With that said let’s fill it out.

Notice that the form on the left-most side has some circles on it. These are the things in the form that need to be changed. The $model is a path to the model. This is where you will export the model to. Notice (in the form on the right) I have changed my export to read /models/mapobjects/Heli/sikorsky.md3. Remember that milkshape saves its files as a .ms3d file. This is not what you will export the model as. You will export it as an .md3 file. So make sure the path has the name of the model with .md3 at the end.

See the $frames listing. That says that there are 18 animation frames associated with your model. Wrong. You don’t have any animation frames. Change it to say “$frames 1 1”.

Last but definitely not least you need to change the paths to the textures. Look at the skin paths. They are ALL wrong. You need to give the correct path to the .tga file you used to skin the model. I put mine in /TGAfiles/models/mapobjects/Heli/htext.tga.

Remember that the paths are all starting from the /main directory in wolfy.

It doesn’t really matter where you put the model and the texture files on your computer – but you should store all files below the /main directory in wolfy. When you make the final release, the map’s .pk3 file will include all the files with the correct paths. If you open up your final .pk3 file the /pathnames on the right should correspond to where you saved the files on your computer starting from the /main directory in wolfy. These paths must also correspond to what your writing down in the .qc file you just made. That way your model and your textures will work perfectly with you final release of you map. These paths are also the pathnames you will use in radiant.

You now need to export the model. You will export the model to the same directory as where you saved the .qc file (the control file we are looking at) and the exported .md3 MUST HAVE THE EXACT SAME NAME as the .qc file. Go over to the File menu and select File -> Export -> Quake III Arena MD3. Give your model a name (you should probably name it the same as you named the .qc file) and save the .md3 file. You did it! You exported the model correctly. Now there is only one thing left…..

Getting it to work

Magnificent. Thus far you have created a model. Grouped it. Skinned it. You’ve even created the control file. Now there is one last thing. Get it into wolfy!

To do that you will need to load up GTKRadiant. Now in your map right click and select a misc_model. Radiant will ask you for a path to the model. Give it the path you saved you model in starting from the /main directory in wolfy.

You need to select View ->Entities As -> Skinned and Boxed. Now you should see your model in all it’s textured glory. Place it in the map and Walah!

Bsp the map and load up Wolfenstein. Now (as you may know) hit the “~” key on the keyboard to bring down the control panel and type in \SV_Pure 0. Then hit enter. Then type in \Devmap (name of your map) and hit enter. You should now have your map loaded. Turn around and there it is!

My Precioussssss….