------ meddle source code read me ---------------

WARNING: USE THIS SOURCE AT YOUR OWN RISK! THE AUTHOR IS NOT
RESPONSIBLE FOR ANY LOSS OF DATA OR OTHER DAMAGE CAUSED BY USE
OF THIS SOURCE CODE!

------ ramblings ------


[cut much stuff] 

Also I hope someone ports this to linux, since I've had a few
questions about that...

LASTLY, there are some bad programming techniques in this source as 
well as some errors which really don't hurt anything. Too bad.

------ the files ------

This is all i'm gonna say about the contents of the files, 
but you can email me if you have a question:

makefile    ::  it's the make file (duh)
mdl.pal     ::  the palette for quake (comes with meddle)
mdl.map     ::  color map (comes with meddle)
mdl.cfg     ::  config file for program (comes with meddle)
mdl.cc      ::  the main program, reads command line, cfg file, etc.
                it now also has a small help section
mdl_io.cc   ::  read/write mdl file, set up 3d data
mdl_2d.cc   ::  All the 2D editing and displaying things 
mdl_3d.cc   ::  All the 3D editing and displaying things
bg_grx.cc   ::  My graphics routines converted to grx with a lot of
                unused and redundant stuff. A lot of 3dgpl stuff pasted
                in there.
bg_mouse.cc ::  my mouse routines (yuck)
bg_grx.h    ::  header file for graphics and
                more 3d junk
bg_mouse.h  ::  header file for mouse stuff
mdl.h       ::  header file for main program
cwsdpmi.exe ::  dpmi environment (comes with meddle)

I bet most of you are reading this because you want to add texture
mapping to something. Well, here is some help. You'll have to look
at stuff towards the end of bg_grx.cc, you'll need to cut and 
paste alot. It doesn't do proper volume clipping either. You also
should look at mdl_3d.cc since that is where the meat is. It is 
completely un-optimized. If you don't understand the 3d format, it
is similar to that found in the book by Allen Watt ( i think that's
his name) on 3d graphics. In the main loop I convert all points
to the eyeball (camara) coordinate system, sort the sides, back
face removal, then draw them. That's it.

The texturing routine is a little different from 3dgpl, it just
uses bilinear mapping instead of perspective corrected. 
Gouraurd shading has been added to the texture mapping (like
quake).
 
// this part is junk... but may help some
Lastly, I included 3ds2mdl.cc which kinda works. It is a program
which reads 3ds files and saves them as an mdl file. It only reads
one object and is in the experimental stage. I did make some quake 
models with it though. You just have to keep the number of polys low.
And use MedDLe to do the mapping. The makefile for it is called 
makefile.3ds. This may be of some help to someone. Figuring out the
3ds file format wasn't the easiest thing to do with the docs I had,
(and I didn't have 3ds!), so if you release a converter of some sort,
please give me some credit. The hard part is done, you just need to
fix some things.  

Note i didn't fix this to work with the new version of the models. 
// end junk

------ compiling ------

You should be able to compile this stuff as is with DJGPPv2 and
GRXv2. I will tell you right now that I am one of the best source
code thieves. But I do give credit where credit is due. Most of the 
3d code was adapted from 3dgpl (get it at x2ftp.oulu.fi) as stated in
the meddle read me. If your good enough to understand the stuff your 
stealing, then fine, it saves time. That's why meddle source is here.
If you can make heads or tails out of it, it may help you make 
your editor. Take what you want, just give credit to whom you feel
deserves it.

note: the 3ds2mdl might not compile (or even work). But it should, I just
haven't tested it for some time and it might be an old version.

oh, and just type 'make' to make the program. :)

-------- LAST WORD ------

The meddle project IS NOT DEAD. It's just that I don't have much time
now a days. I am learning vc++, and will continue MedDLe in windows.
(yea right)
I also plan to make it a real 3d editor. 
(yea right)
If time permits there will be 
some quake map editing features like monster placement and stuff. For 
you dos and linux guys, I give you this code :)

-----------------------
brian martin
the zombywoof

brian@phyast.pitt.edu
www.phyast.pitt.edu/~brian

