TEP progress report for the 3d graphics workgroup (i.e. me)

Progress Report
Last updated on the 31st January 1998 at 4:29am.
Minor update:
Just a couple of bits and pieces here:
- Corrected painter's algorithm bit - works much better now, though not
perfect.
- Added Maksim Orlovich's new input code. Note that you now need to
press F10 to exit the demo.
- Changed VBE setup routine so that is doesn't give you blitting options
in non-lfb modes.
- Tested on loads of computers. All of them eventually worked in at
least 640x480, although at least one needed a proper VBE 2.0 driver.
Surprisingly it seems to work fine under Windows 3.1.
Download stuff here:
The files which are heavily altered or entirely my own are tepgraph.cc,
tepgraph.h, vesa.asm, tep3d.h, tepserv.h, tepserv.cc, tepobj.cc,
tepinln.h, tepinl3d.h, tep3d.cc and tepfleng.cc.
New stuff on 30th January:
- Reflective light actually works now. It's beautiful :-)
- QuickSort painter's algorithm routine put in to depthsort polygons.
With Gerd's
station .ASC's you can see just how badly painter's
algorithm
can work.
- Added double buffering and vert. refresh waiting to tepgraph.cc and
vesa.asm.
Try them all, see if you can tell the difference.
- Fixed problem with some VBE 1.2 implementations not supporting the
getScanWidth function.
Now works on every PC I've tried it on except
the Windows NT one.
- Added triangle to square concatenator to tepobj.cc. Works fine with
lsphere.asc
but nothing else. Doesn't work with 5+ sided polys.
- Changed showcase rotation technique in tepfleng.cc. Try it and see.
- Did things to user interface.
- Umm... That's it. Probably.
New stuff on 28th January:
- Implemented specular lighting, but it didn't actually work.
- 30% speed increase on blitting routines.
- Lots of restructuring including inline functions files.
New stuff on 27th January:
- OOP-ized everything. Sort of.
- Created object handling structures and functions.
- 3d engine working in many more cases.
- Ambient lighting effects added.
- Added some very simple flight engine stuff.
- Complete overhaul & restructure of VBE code. VBE 1.2 support.
Future work schedule:
My eventual aim is to get a testbed up and running in order to test out
various types of flight engine. This will require the following things,
in no particular order:
- A rudimentary graphics engine
Got it. Actually it's getting better than rudimentary. Still need to
implement clipping though...
- Some sort of scanner
- Several computer AIs
Have to work on this...
- Input methods - probably keyboard & joystick
- A timer
Maksim Orlovich is working on input routines - the really low level stuff
I'll either nick or copy off Allegro. Really do have to get a passive
timer working though to get the precision on the flight engine.
The Rest
Everything else that was here is completely out of date. Still, I'll leave
all the old files for completeness:
What? You want more information? In that case you'd better email
me.
Here's a very handy link to the
central TEP resource
page.
Here's a link to download a zip file containing the contents of this
web page: