BINedit Manual - UNDER CONSTRUCTION

for Version 0.9 Release 20, ???, 1998
a BIN model editor for Monster Truck Madness 1 and 2, CART Precision Racing and Hellbender

©1998 Oliver Pieper
pieper@ViaRegio.de
http://www.ViaRegio.de/pieper

This document was last changed on 1998-12-11.

Table of Contents
  1. What's New?
  2. About BINedit
  3. Installation
  4. Working with BINedit
    4.1 The Basics of BIN Editing
    4.2 Keyboard Commands
    4.3 Menu Commands
  5. Feedback
1. What's New?

See the file CHANGELOG.TXT for details.

[ back to Table of Contents ]

2. About BINedit

BINedit is a utility for editing BIN files (aka boxes, models, or props). BINs are the three-dimensional models used in the Terminal Reality (TRI) games Monster Truck Madness (MTM), Hellbender, CART and MTM2. This program was developed with MTM (and MTM2) in mind, but should work with the other programs, too.

Unlike my normal beta programs which tend to be quite stable, this one is REALLY BETA! I do my best to release only fairly stable versions, but I won't take any responsibility for lost BINs and similar occurences. Improved versions will be released in irregular intervals.

Please report any bugs you find (this includes spelling and grammar errors in this text) and send me general suggestions for the program.

Because the program is still under development, this manual will not yet discuss the functions in greater detail.

BINedit is POSTCARDWARE. If you use it and have not yet sent me a postcard, please do so. See POSTCARD.TXT for details. If you would like to see who has already sent me a card, take a look at http://www.mathematik.uni-marburg.de/~pieper/mtm/mtm_card.htm.

I know that BINedit is not exactly easy to use and that this manual only describes the functions of BINedit, not the procedures necessary to actually create BINs (except for the little "hay pyramid" mini-tutorial). If you have written or know about any documents that address this topic, please contact me so that I can link to the files or add them to this manual.

[ back to Table of Contents ]

3. Installation
  1. Copy the files BINedit.exe, opengl.dll, and glu.dll from the ZIP files to a directory of your choice. If the two DLLs are missing, BINedit might still work if OpenGL is installed on your system. Should BINedit not work, you can find both files in a separate ZIP file on my MTM web site.
  2. If you haven't done that already, get the MTM TrackEditor TrackEd (MTM1) or TrackEd2 (MTM2) from Terminal Reality, install it, and run the "First Time Setup"
  3. If you want to import trucks as BIN models, you must also use TrackEd to manually extract all files from the file SYSTEM/STARTUP.POD. Start the Track Editor, go to the File Manager, chose the Advanced Options and use Option 2 to extract all files from SYSTEM/STARTUP.POD.
  4. Start BINedit
IF YOU ARE USING BINEDIT 0.910 OR LATER FOR THE FIRST TIME:

The first thing you have to do is use the "Preferences" command in the "File" menu and select the default color table (for MTM it is the file "METALCR2.ACT" in the ART subfolder of the MTM folder), the default BIN model directory (for MTM it is the MODELS subfolder of the MTM folder), and the default .RAW and .ACT folder (for MTM it is the ART subfolder of the MTM folder).

[ back to Table of Contents ]


4. Working with BINedit

 

4.1 The Basics of BIN Editing

A BIN file describes a three-dimensional model for MTM (and Hellbender, CART, MTM2,...). The basic structure of a BIN consists of points in a three-dimensional space. Those points are called vertices (singular: vertex).
A vertex is not visible in MTM, but BINedit will display them unless the option is deactivated.

Fig1.gif (538 Byte)
Fig. 1 (Vertices)

Three or four of these vertices can be used to form a visible surface. I will call these polygons faces. A face has only one visible side. The faces is visible from the side where the vertices seem to be defined clockwise.

Fig2.gif (1278 Byte)
Fig. 2 (Face formed by four vertices)

The face in Fig. 2 will only be visible from your side of the screen if it is defined as 1, 2, 4, 3 or as 2, 4, 3, 1 or as 4, 3, 1, 2 or as 3, 1, 2, 4. Reverse the order, and the face is only visible from within your monitor 8-).

Each face uses a RAW file (a MTM texture file) for the rendering of its surface. Monster Truck Madness RAW files are 64x64 or 256x256 pixel images. Several faces can share the same texture.

Fig3.gif (1656 Byte)
Fig. 3 (Textured face)

4.2 Keyboard Commands

This is a list of the BINedit commands that are only available by using the keyboard. There are additional keyboard shortcuts for menu commands, like Ctrl+A for "Select All Faces" that are not listed here. Those commands are shown in BINedits menu.

3d View

keypad + zoom in (press SHIFT to zoom faster)
keypad - zoom out (press SHIFT to zoom faster)
cursor keys rotate view (press SHIFT to rotate faster)

BIN Editing

TAB / SHIFT TAB cycle through vertices (forward/backward)
SPACE / SHIFT SPACE cycle through faces (forward/backward)
cursor keys rotate view (press SHIFT to rotate faster)
   
X / SHIFT-X move current vertex parallel to the x axis (positive/negative)
Y / SHIFT-Y move current vertex parallel to the y axis (positive/negative)
Z / SHIFT-Z move current vertex parallel to the z axis (positive/negative)
   
N / SHIFT-N select next/first vertex of current face
   
F Add or remove current face to or from the active face selection
V Add or remove current vertex to or from the active vertex selection
   
I Display information about current model / face / vertex
   
T Toggle display of current vertex' texture.
A red outline shows how the texture is mapped to the current face.
Press N repeatedly to cycle through the vertices of the current face and move the selected vertex by either clicking on the new position or by pressing X / SHIFT-X and Y / SHIFT-Y.
   
SHIFT-T Select a new texture for the selected face.

 

4.3 Menu Commands

Menu FILE

Menu VIEW

Menu FILE
Menu VIEW
Menu MODEL

MODEL
Rotate x,y,z - rotate model around selected axis
Resize - resize model (values are in feet, one foot equals 256 editor units)
Old size is displayed in left column. Enter new size in right column.
To keep the proportions, check the "keep proportions" box before changing
a value on the right hand side. The other values will be calculated automatically.
Translate - move the model (values are in editor units, 256 editor units equal one foot)
Normalize Texture - select ONE new texture for ALL faces.
Write textures to textfile - will write the names of all textures that are used by the model to
a text file. Useful when creating response files.

 

Menu VERTEX

VERTEX
Set Coordinates - change the coordinates of the current vertex
Add - Add a new vertex. A dialog box will prompt you for the coordinates.
Delete Current - Delete current vertex (if it is not used by any face).
Delete all unused - Delete all vertices that are not used by any face

Menu FACE

FACE
Add - Add a new faces. Write down the vertex numbers of its corners before
entering the dialog box. The faces will get the first texture
in the texture pool. To change texture, select the face and
press SHIFT T to select a new texture from the pool.
Delete current - delete the current (selected) face.
Flip and rotate texture - as the name says. Flip doesn't work for triangles.
Properties - view/change properties of current face (vertex numbers, texture type and texture image)

Menu TEXTURES

TEXTURES
Load - load one or more new textures into the editor's texture pool.
Only loaded textures can be used for faces.
Define Animation... - define a new texture animation. You will have to specify a name, the number of
frames per second and the textures for the frames. The new animation <name> will
appear as "ANIM:<name>" in the texture selection dialog.

Menu GROUPS

GROUPS
When you press F or V, the current "F"ace or "V"ertex will be marked as selected.
With "Define ???? Group" you can assign a name to the current selection of faces
or vertices. With "Restore ... Group" you can either restore a previously saved
selection group, or - by selecting the unnamed group - clear the selection.

Vertex selections are in use only in "MODEL/TRANSLATE".

The selections will be saved to and restored from the .BIN model's .INFO file.

Menu HELP

------------------------------------------------
4. Known Bugs and Limitations (it's still BETA!)
------------------------------------------------
- too many to mention!
- some few BIN files are not yet supported
(may have been fixed with 0.904. Please report
any BIN that still does not work).

---------------------
5. BINedit homepage
---------------------
http://www.mathematik.uni-marburg.de/~pieper/mtm

------------------------
6. The author of BINedit
------------------------
Oliver Pieper
Student of Computer Science at the
Philipps-University of Marburg, Germany.

email: pieper@ViaRegio.de
WWW: www.ViaRegio.de/pieper

Appendix A - Wavefront/Digital Arts File Format

Wavefront/Digital Arts is a very simple format that stores three dimensional models as ASCII files. BINEdit implements only two Wavefront/Digital Arts commands:

v x y z
defines a vertex at the coordinates x, y, z

Examples:

f v1 v2 v3
f v1 v2 v3 v4

defines a face using the vertices v1 v2 v3 (triangle) or v1 v2 v3 v4 (rectangle)
NOTE 1: Wavefront numbers the vertices 1, 2, 3... but BINedit starts with vertex 0.
NOTE 2: Wavefront supports faces with any number of vertices, BINedit only with 3 or 4.

Examples:

I use this format to define my model shapes "offline". Its easier than using the menu commands to add each vertex and face. I've included the BARREL.OBJ that I've used to define the orange barrels for Derailed. View/Edit it with Notepad.

To convert other formats (Autocad DXF, 3D Studio 3DS, ...) to Wavefront OBJs I use

Pixel 3D
1996 (c) Forward Design
http://www.wavetech.net/~pixelboy

The shareware version is limited to a certain number of program starts. Make certain that Pixel 3D has access to your Windows directory. It needs to modify the file C:\WINDOWS\WINSYS.DLL every time it is started. Strange DLL, by the way. It is definitely no Windows system DLL.

 

 

Appendix B - About the Files

 

Appendix C - Mini-Tutorial

Ok, let's build a hay pyramid to get a feeling for the program 8-)

Start BINedit. Do not load an object! (Or use the FILE/NEW function)

Our pyramid needs a square base and four triangular sides. To add a face, we need vertices first.

Let's start with the base. We need four vertices. For simplicity's sake, we will insert them at a y-coordinate of 0.

Add the first vertex at x= 1000, y=0, z= 1000
Add the second vertex at x= 1000, y=0, z=-1000
Add the third vertex at x=-1000, y=0, z=-1000
Add the fourth vertex at x=-1000, y=0, z= 1000

Press the keypad "+" key a few times to see the vertices in the 3d view.

Viewed from the top (from the positive y-axis), they would look like this:

/\ z-axis
!
!
3 + ! + 0
!
!
----------------+---------------------------> x-axis
!
!
2 + ! + 1
!
!

Press TAB a few times to see the 3d cursor cycle through the vertices.

Before we can add the base face, we need to load the texture.
Select the menu option TEXTURES/LOAD... and load HAYSTACK.RAW.

Now we can add the face. It should be visible from beneath the pyramid (negative y-axis), which means that the vertices of the face will have to be defined clockwise when looking from the negative y-axis. My sketch of the vertices is from the positive y-axis, we need to use a counter-clockwise order:

3, 2, 1, 0 will do. Select the menu option FACES/ADD and enter the values in the edit fields. The new face will appear in the 3d view (well, it will, if you rotate the model with the cursor keys until you can see the pyramid from below). Since there is only the haystack texture in the texture pool, it will already be assigned to the face.
We can test it by changing the FACES/PROPERTIES to "textured". The 3d view will now display the face with its texture.

The pyramid still needs the four sides. First, we have to add the last vertex, the one at the top of the pyramid.

Add the vertex (it's nr. 4) at 0, 1000, 0. This is 1000 units above the center of the base face:

/\ z-axis
!
!
3 + ! + 0
!
! (4)
----------------+---------------------------> x-axis
!
!
2 + ! + 1
!
!

Now we can add the four sides. Defined in clockwise order, they are
4, 0, 1 (face nr. 1)
4, 1, 2 (face nr. 2)
4, 2, 3 (face nr. 3)
4, 3, 0 (face nr. 4)
(the base is face nr. 0)

To add triangles, leave the last vertex value at -1.

That's it! We've just built a (simple) MTM BIN model...

Select FILE/SAVE AS to save the creation (I called it haypyra.bin). You will be warned that the model is not centered along the y-axis and asked if BINedit should center it vertically. Unless you are editing a truck shape which is usually floating above the ground, the left button ('Ja' is German for 'Yes') is the correct one. The pyramid will be lowered a bit.

Now fire up the track editor and use the new BIN!

Modifying the pyramid

The pyramid is about 8 feet wide and about 4 feet tall. To change its dimensions, use the menu option MODEL/RESIZE.

To move a single vertex, select it with TAB/SHIFT TAB and use the X/SHIFT X, Y/SHIFT Y, Z/SHIFT Z keys to move it in 100 unit steps. Or use the menu option VERTICES/SET COORDINATES.

Now let's change the texture of two opposite faces. First we need to add the new texture to the texture pool. Select TEXTURES/LOAD and load the GOLFGRAS.RAW texture.

Press SPACE or SHIFT SPACE until one of the side faces is selected (tinted purple). Now press SHIFT T. You will see a list with all textures in the pool. Select golfgras.raw. Now select the opposite face and do the same.

Voila! Now we have a pyramid with two different textures.

Experiment!

Copyright Information

Resale of this product is strictly prohibited unless given explicit permission by the author. Distribution on CD-ROM is strictly prohibited unless given explicit permission by the author. All material contained within the BINedit ZIP file is considered copyrighted by the author.

©1997, 1998 Oliver Pieper

LIMITED WARRANTY

THIS SOFTWARE AND MANUAL ARE PROVIDED ON AN "AS IS" BASIS. THE AUTHOR DISCLAIMS ALL WARRANTIES RELATING TO THIS SOFTWARE, WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. NEITHER THE AUTHOR NOR ANYONE ELSE WHO HAS BEEN INVOLVED IN THE CREATION, PRODUCTION, OR DELIVERY OF THIS SOFTWARE SHALL BE LIABLE FOR ANY INDIRECT, CONSEQUENTIAL, OR INCIDENTAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE SUCH SOFTWARE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR CLAIMS. THE PERSON USING THE SOFTWARE BEARS ALL RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE.

[ back to Table of Contents ]