Some stuff I did

Until I can more completely describe the various other things I've worked on, you can look at this minor-league screenshot from ATATtack which was my final project in CS184. It was completed in just over a week and a half's mad coding, side-by-side with Emily Butler. It compiles with Iris GL under Irix, NPGL and VOGL under HP-UX, and VOGL under Linux. Quick description: two player 3D tank game in which the tanks are fully articulated ATATs with pretty convincing walking animation. If you're a Lucasfilm lawyer, you can stop reading now. This isn't the lawsuit you're looking for. He can go about his business. Move along, move along.

Picture of ATAT blowing crap
up

This is a screen shot from the flat-shaded version; don't mind those inverted normals. The game was very simple: You and an opponent each drive a huge lumbering ATAT (ala TESB) toward each other over a big field, blasting madly away until one of you is damaged enough to drop some legs. That player becomes an ATST and goes skipping about enjoying the immense freedom granted by increased maneuverability and top speed, not to mention a much cooler gait. From this state, a player who is further damaged will drop all remaining legs and other body parts and flatten out into a snowspeeder-esque ship that will zip around and harry the remaining player (if he feels like it, otherwise he can just run away), desperately trying to avoid getting hit since it can't stand more than a couple more shots before death.

You can check out the README file if you want. We were barely conscious when we sat down to write it.

You can even use the source, Luke! However, I make no promises. No complaints, please.

Drawbacks: For a week and a half of coding, this project rocked. However, it was not written to be very extensible, and there are lots of things I would redo in order to make it more flexible and interesting, not to mention more efficient. The flat terrain is awful, but all we had time for. There's a mysterious sqare root error which appears only when using HP's NPGL emulation of GL. The coding of the walking and skipping motion is great, but again, not easily modified. What I'd really like to do is start with an editor in which you can specify not only geometry, but motion, hopefully with both spline-based and spring-mass models, not just the angle interpolation we did here. The editor would spew objects which could be compiled (or maybe dynamically loaded) into the executable.

The editor is in fact what I plan to spend lots of time doing in the future, if I ever get time. If I do everything I'd like to, games like ATATtack would be something you could do in an afternoon.

Some things I'd like to add or change, in no particular order:

One of the nice things about this project is that people who actually heard about it and took the class after me have asked me for code to show them how I did certain things with GL. This is pretty gratifying.


Last modified: Fri Oct 13 17:49:43 PDT 1995
Bret Mogilefsky / CSUA / mogul@csua.berkeley.edu