home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fujiology Archive
/
fujiology_archive_v1_0.iso
/
!FALCON
/
!BONUS
/
GAMES
/
ENGINES
/
BM214A.ZIP
/
BM214A
/
READ.ME
< prev
next >
Wrap
Text File
|
1995-03-23
|
4KB
|
87 lines
VIEW.EXE
By Jake Hill
December 1, 1994
OVERVIEW
VIEW is a BSP based rendering engine compatible with Id Software's WAD file
and WAD files generated with DEU 5.2. VIEW.EXE will only (ONLY) work with
DOOM.WAD files from the first doom. It will NOT work with DOOM-2 wads.
The complete source is included. If you modify these files and then release
them to the public in ANY form, you MUST include the original source files
and this read.me file.
BS
First off, I want to thank Matt Fell and Hank Leukart for writing
_The Unofficial Doom Specs_ without which this program would have
never been written. I also want to thank Jaimi McEntire and Lloyd Pique
for tips and help along the way. And last but not least thanks to
Brendon Wyber and Raphael Quinet for making the source to DEU 5.2
available. It was much help with reading in the Wad file. Also thanks
to everyone who I am forgetting now.
If more people made their software available to the public, the world
would be a better place.
This has been a very fun project for me for the last four months. I have
learned alot about 3d and pseudo 3d programming.
This is my first attempt at 3d programming. I think it's a pretty good
first try, but it's certainly not great. Don't be surprised if you find
a bug or two. It does NOT do any texture mapping, but it should be easy
for someone experienced in that to add it in. What it does do is read
in the DOOM.WAD file (for Doom, NOT Doom 2) and render the level with
solid colored non shaded polygons via a bsp tree traversal. It's not fast,
but it's not real slow either. About 24 fps on a 486/66 when compiled
with MSVC 1.5. About 15 fps when compiled with Borland 3.1 or 4.02.
And yes I used optimizations.
To run the executable put VIEW.EXE in the same directory as
DOOM.WAD and type VIEW.
The command line is as follows:
VIEW : Loads DOOM.WAD level 0 (e1m1)
example: view
This loads DOOM.WAD level 0 (e1m1).
VIEW [Level#] : Where Level# is an integer in the range (0-25)
: Loads DOOM.WAD level 0-25 (25=e3m12)
example: view 3
This loads DOOM.WAD level 3 (e1m4).
VIEW [filename] [Level#] : Where [filename] is the name of any
: custom WAD file for doom.
example: view my.wad 3
This loads the file MY.WAD level 3.
Use the arrow keys for direction, plus and minus control height,
use ALT with the left and right arrow for strafe mode, and ESC
will exit the demo.
The entire thing is written in c++. There is only one class, the view.
There are some obvious optimizations which can be made with assembler.
If you want to make it more object oriented, it should be fairly
obvious which data structures need to be objectized, but I didn't have
the patience to do that.
The reasons that I am making this available in such an early stage are:
1. I am sick of looking at this project ;).
2. I have not seen many (only one) rendering engines which use a bsp
but I have seen ALOT of questions regarding bsp's. I hope that
this will help some of the people interested in bsp based rendering.
3. I would like ANYONE who manages to improve on these algorithms
(and there will be many) to keep in touch. I would particularly
like to know how it runs when compiled under Watcom's 32 bit flat
model. If anyone sees any blatant mistakes on my part, or has any
suggestions on how to improve this code PLEASE let me know.
I would love to hear any comments or questions you may have.
I can be reached on CIS at Jake Hill 74032,350 or on internet
at jkhil@dbsoftware.com
Good Luck. And remember, Life's too short to wear socks!