LAST UPDATED 10/31/00
1) Canyon Raider and DX7 Scrolling NEW
2) Space Eagle II game code
3) DirectX 7 Bird Demo
4) Drone Wars Project
5) Deciphering trueSpace objects (.cob) with VB
6) A 3D experiment using VB and gdi32
7) Look at your website's activity log using VB
Canyon Raider Project (DirectX)

Another unfinished project here. This one uses some useful
scrolling techniques though.
This demo combines moving water FX along with scrolling terrain.
Space Eagle II Project

Here's a project I started a while back but never
finished. Remember the arcade game "Space Eagle"? This is a partially functional
version using gdi32 for GFX and the WAVMIX32.exe for multiple sounds. This archive
contains all the work on the game. This game, btw, has a built in Level Editor with it's
own language for designing alien wave attack formations.
(The "wavemix32.ini" file goes in the "Windows/" directory and the
"wavemix32.exe" goes in the "windows/system/" directory)
To move the ship, use the arrow keys and to fire use the "Ctrl" key.
If you have questions on the structure of the game - email me. If you ever add to the game
and get it more functional - I'd be curious to see what ever became of it, so please let
me know!
DirectX 7 DirectDraw Demo

While in the process of updating Jouster to use DirectX 7, I put together this DirectDraw Demo of flapping Joust Birds flying over a lava backgound in full screen 800 x 600 mode. The number of birds continuosly increases (up to 1000!) while displaying the Frames Per Second and the Bird count. This demo is based off of the DD7 Tutorial 3 that is included with the DX7 sdk. One enhancement I've added is the use of the "GetTickCount" function from the kernal32 llibrary to smoothly regulate the speed. I tried a standard timer routine but ended up with very jittery animation. I also tried out the "BltFX" function which allows special FX while blitting. I wanted to make only left facing gfx and then flip them to the right when needed. I found that using the "BltFX" as opposed to the standard "Blt" results in much-degraded performance. You'd be better off creating all needed gfx rather than trying to alter it on the fly with this function.
Visual Basic and Making a game (Non-DirectX)
This section deals with the steps in making the game "Drone Wars II". I'll cover the various areas, pretty much in order, in the production of a game with graphics and sound as well as a computer AI (artificial intelligence) and of course source code. This section will become more complete if I ever get more written. Just click below ...
Visual Basic and trueSpace
Objects

If you use trueSpace AND Visual Basic (5 or higher), then this program
might interest you. It will read and display a 3D object that has been created using
trueSpace (.cob objects). The archive includes some sample COB objects - so even if
you don't have trueSpace you can still run the program. The limitation to this program is
that it only displays simple objects that have a single surface like: cubes, spheres,
etc... I'll get a multi surface version going some day... I wrote this program as a
prelude to making an "Exploder" type program (one that would take a
non-animated COB file and create an explosion sequence to use in animation's).
For the file structure of a cob object, go here: http://www.caligari.com/tsx/tsx_dev98.htm
Here's the program and sample cobs: COB Project
To load different objects, go into the "Translate" module and change the file name (sphere2.cob is the most complex). I didn't write this program with anyone else in mind - so the "rems" are between sparse and non-existent...

Arc Table method of 3D movement in Visual Basic 5
I had an idea kicking around a few months back for displaying a 3D perspective view and being able to rotate objects in 3D. Well, I envisioned trying to rotate some asteroid looking objects around a central point and being able to control different aspects of the perspective view (angle, depth, size, speed, etc). The problem was: how do I present a perspective view (or even an edge-on view) based on objects placed on a 2D plane. The biggest thing to try to picture is working in a "Z" axis ("up" and "down") when the only info you have to start with is "X" and "Y". My solution was to transfer "X" and "Y" information into three different variables: the distance from a central location and the corresponding SIN and COS values the object would have were it on a circle with the same radius as the distance. VB is rather slow at calculating SIN/COS so I made several pre-calculated "Arc Tables" - one table for each distance increment out from the center (25 total). With this information, rotation is possible.


To make things easier to picture and work with, I made the animation function using the gdi32 library and pre-rendered gfx from a bitmap - complete with masks for overlapping objects.

Here's the source code with the asteroid bmp included : ArcTable Program
I have a PIII 500, and the program runs fairly quickly. Using the "+" and "-" buttons you can speed it up ("-" is faster). "Rotate" initiates rotation.
An Activity Log scanner in Visual Basic
Do you have a web site and want to know how often pages and zips get accessed from your site? This program is a simple Activity Log scanner. It will display info on Zips, pages, and the start / end dates for a given activity log.

Before running, change the information under "setup" to reflect your website's info, and place the activity log in the same directory as the program and hit F5. The above screen shot is from a 2mb log file (included ) I used the "Instr" command for the first time (for me) - seems to work pretty good for string searches. This program searches chunks of text that are located from line feed to line feed (Chr 10).
The current version has functioning sort and print routines.
Here's the source code and an 8-day activity log from my site as an example: Log Scanner Project
I plan on releasing it as a freeware Activity Log Scanner pretty soon...