Welcome to the wadtoiv home page.

Last modification: 10/16/95

New timing results for Open Inventor 2.1!

Current wadtoiv version: 1.2

...and while you're here:

check out wadtoiv interactive, the world's first Web-based interactive 3D Doom renderer!

What is wadtoiv?

wadtoiv (wad-to-eye-vee) is a little program that reads in a Doom wad file (and, optionally, a patchwad) and outputs a specified episode and mission's map data in Open Inventor format.

What does this mean?

It means that you can render a level, complete with textures, floors and ceilings, on any system to which Open Inventor has been ported. More significantly, it means you can do all this on a Silicon Graphics RealityEngine, one of the fastest graphics computers in the world.

In addition, we have a set of autonomous agents that are written using the Inventor toolkit that can sense and react to their surroundings. It took about five minutes to get them running around in Doom once wadtoiv was done.

How fast is it?

It depends on the version of Open Inventor you're running. Open Inventor 2.0.1 choked on some of the larger Doom levels -- but Open Inventor 2.1, codenamed "Zippy", renders them with no problem. When the output of wadtoiv is run through ivfix, SGI's new scene graph optimizer for Inventor 2.1, the frame rate is indistinguishable from that of Performer, arguably the most optimized graphics product SGI produces.

Here are some timing tests run on our Onyx with RealityEngine, running Irix 5.3 and a prerelease version of Open Inventor 2.1.

E2M6 Inventor 2.0.1 Inventor 2.1 (Non-optimized) Inventor 2.1 (Optimized)
Small window 0.30 Hz 9.13 Hz 22.01 Hz
Full screen 0.29 Hz 9.09 Hz 22.74 Hz

What doesn't it do?

Right now it doesn't handle sunken floors and raised ceilings properly; the enclosing floor covers up the sunken one. This could be fixed by expressing the floor and ceiling polygons instead as trimmed NURBS. This is left as an exercise for the reader. :-)

What's new in 1.2

Wadtoiv version 1.2 has several improvements over version 1.1:

The most significant (and the one that took the longest time) is that texture alignments are now handled properly. While you may still see a few textures in some levels that look completely wrong, that's probably not an alignment bug. I have checked several levels and haven't yet found an obviously misaligned texture. The most flashy improvement is that wadtoiv now supports Doom 2 and patchwads for Doom 2. The scenes will also look better (well, brighter, anyway) now that I've added lights to illuminate the ceilings and floors.

So what do I get out of this?

The source. Or, if you prefer, a binary. The source should compile on any 32-bit machine (read: SGI) with the Inventor libraries. The binary should run on any SGI with the Inventor 2.0 runtime system installed, and includes an Inventor viewer (SceneViewer) so you can look at the output.

This program is freely redistributable and comes with absolutely no warranty.

Here are some cool new pictures! Check out the CyberDog, complete with chaingun!

Note that clicking on any of these pictures will bring up a MUCH better looking, high-resolution, 24-bit JPEG. Try it out!

The credits

Thanks to Raphael Quinet and Brendan Wyber for their excellent Doom Editor Utility, from which I used several functions and all the wad data structures.

Thanks to id Software for writing Doom. Doom and Doom 2 are trademarks of id Software, inc.

Thanks to Bruce Blumberg for the dog, and to Michael P. Johnson for the chaingun and chrome dog.

Additional thanks go to Matthew S. Fell (author of the Unofficial Doom Specs) and Scott Amspoker (author of TEXTURES.TXT); their documents enabled me to finally get the texture alignments right. Remember, when in doubt, RTFM!

Kenneth B. Russell - kbrussel@media.mit.edu

$Id: wadtoiv.html,v 1.4 2001/06/02 05:20:11 kbrussel Exp $