September 5, 2010, Sunday, 247

Projects

From LanceBurns.com

Jump to: navigation, search

[edit] Current Focus

[edit] My PhD

My PhD seeks to enable efficient interoperability between Distributed AI technologies and the High-Level Architecture, which was developed by the US Department of Defense to enable development of modular military distributed simulations.

Arriving mid-late 2010. Everything else is basically on hold until then.

[edit] Encephalon

Encephalon is a flexible service which allows client applications on many platforms to harness Distributed Artificial Intelligence for problem-solving. An offshoot of my PhD work, aimed at a much broader audience.


[edit] Other Projects

link=Jazz

[edit] Kazumi

A "software engineer's workbench" for streamlining development and maintenance of large software projects with complex interdependencies. (Not yet released. Will be looking into options post-PhD.)


link=Jazz

[edit] Exordium Device

An experimental realtime simulation framework. Enables the construction of complex (but homogeneous) distributed simulations/games, with no tight bindings to any particular graphics/audio/user input system.

The basic idea is to create a virtual physical world which can interfaced to the user(s) in many different ways - potentially simultaneously. Interface data is shifted over sockets via an open protocol; which opens up the possibility of (for example) upgrading an old Exordium simulation/game by "dropping in" a new graphics engine.

[edit] Top Secret Game Project(s)

I plan to eventually release at least one indie game project based on Exordium Device. May never actually happen.


[edit] littlebluefrog labs

link=Jazz

[edit] JazzVR (Open Source)

I am the creator and principal maintainer/developer of JazzVR, a lightweight VR framework for Java. (Not released yet... PhD taking all of my time.)

Dependent projects: The Bandwagon Project, BeatBox, PhD Experiments (Visualisations)

[edit] The Bandwagon Project (Open Source)

A purely for-fun project, Bandwagon is an experimental "community-driven website visualiser". An interesting project and will hopefully be entertaining to see in action. More details later.

Related projects: JazzVR

[edit] Portico (Open Source)

Portico is the definitive open source implementation of an HLA RTI (High Level Architecture Run-Time Infrastructure). I contributed to the C++ interface and co-developed the initial implementation. I am currently using Portico for my PhD work and contributing back to the project whenever I can.


[edit] Samples of Previous Work


[edit] Research Programming


[edit] WeatherSim (2008)

An experimental simulation of Earth's weather from global scale down to meso-beta scale (albeit fairly coarse); calculating pretty realistic wind velocities, cloud formation, precipitation and surface temperature. Took into account time of day, seasonal changes etc. Written in C for Windows.

[edit] Honours Thesis (2004/2005)

My honours thesis introduced a system for providing efficient, high-fidelity collision detection services to High Level Architecture-based distributed simulations. As part of the project I developed a functional prototype for experimentation, which proved the validity of the system.

[edit] Illumos Raytracer (2005)

Image:Beta2-001-thumb.jpg

Image:Beta3-001-thumb.jpg

Image:Beta3a-001-thumb.jpg

Image:Beta4-001-thumb.jpg

A reasonably fast realtime/non-realtime raytracing engine with extensive post-processing capabilities. Written in C/x86 ASM for Windows.

[edit] ByteC (2004)

An interpreted language in the style of Java (with a VM), but based on simple procedural C. Written in C++ for UNIX/Windows.

A good learning experience, but at the end of the day there are similar (and far better) pre-existing languages available; my favourite being Squirrel.

[edit] TextCat (2003/2004)

A text categorisation database (WebKB/20NG/Reuters) preprocessor written in C for Linux and Windows.

[edit] Ants (2003)

An Artificial Life/A.I. experiment I developed for an Artificial Intelligence unit in the second year of my undergraduate degree.

Written in C++ for Windows (uses DirectDraw/Input), based on fuzzy logic and a novel AI algorithm (well suited to Artificial Life systems).

I plan to release an updated version of this program at some point in the future. Unfortunately the original version used an indexed-colour graphics mode which seems to cause severe problems on modern systems.



[edit] Application Programming


[edit] 3D VR Presentation Environment/Teaching Tool (2008)

A piece of software I wrote for communicating complex ideas and/or dynamic 3D content in an interactive "slide-based" scripted presentation environment. Supported stereoscopic viewing and 6DOF input via the 3DConnexion SpaceNavigator.

Written in Java, built on top of JazzVR.

Related projects: JazzVR

[edit] Medical Database Offline Search Engine (2007)

This application enabled the client to perform complex queries against a very large database with real-time response; significantly enhancing their work-flow. Written in C for Windows.

[edit] Audio-over-LAN (2006)

Pumped lossless audio over a LAN connection via virtual audio I/O devices. Very useful for music production (for offloading VSTs to other machines, for example). Written in C++ for Windows. In 2008 some time I found a program called Wormhole which is far superior to my own implementation.

[edit] EPANN (Extensible Platform for Artificial Neural Networks) (2004)

A package for developing, training and testing Artificial Neural Networks. It was designed to be easily extensible - learning algorithms and transform functions were scripted. EPANN was written in C++ using the MFC for Windows.

[edit] Chatter (2002)

A LAN/Internet peer-to-peer chat application I wrote in C++ for Windows which never reached maturity. It had a few interesting features, such as native text-to-speech support.

[edit] Sprite Editor (2001/2002)

A program for editing metadata for animated game sprites (such as frame timings). Written in C++ for Windows.



[edit] Games Programming


Listed here are a few of the games I've either finished or abandoned. I've done a lot more work using OpenGL/C++ than I admit to here, but many of those games were only in very early stages of development when I abandoned them (usually for reasons of simply having a better idea - be it technical or in terms of the game concept)...

[edit] Desert Bus (For Hope) (2009)

A Java applet remake of Desert Bus, one of the most boring video games ever created. This was created to support the annual Desert Bus for Hope charity fundraiser for Child's Play, in which the crew from LoadingReadyRun play a marathon session of Desert Bus. The 2009 event raised over $138,000 USD. Over the course of the event tens of thousands of people "bussed in sympathy" and experienced the pain for themselves over at desertbus-game.org.

[edit] Voles Classic (2006/2007)

A quick Java applet "port" of my very first (completed) game - Voles. You can read all about it and play it here. Be aware though: It's very silly.

Image:jfps-screen.jpg

[edit] Shard (2005)

A multi-player, browser-based First Person Shooter implemented as a Java applet. Had a software-rendered 2.5D graphics engine pretty similar to Doom, but featured more modern gameplay mechanics and game modes.

This was mainly an excuse to learn the ins-and-outs of writing "high performance" pure Java code (i.e. with no JNI, JoGL etc.). It never reached a release-worthy state unfortunately, due to lack of time for such low-priority projects.

[edit] University Game Engine Prototype (2005)

A game engine prototype I wrote which was intended to be used (with further development) for game development related units taught at my university. The screenshots and video above are from a simple demo I put together (in a hurry). Written for Windows in C++, used Ogre3D for the visuals.

[edit] "Voles 2" Prototype (2005)

This was a prototype for a "remake" of Voles, my first game project (see below). By "remake" I mean I threw out the entire game concept except for the "voles" part. This was to be a 2D platform action adventure game, but unfortunately this prototype had some fundamental gameplay flaws which led me to abandon it.

The prototype was written in C++ using OpenGL, OpenAL & SDL.

[edit] The Adventures of Gus (2004)

A simple Lucasarts style adventure game written for a C# .NET unit back in my undergrad days. Used managed DirectX/Direct3D.

Big thanks to Ben Hubbard for saving me some time and lending a hand with the backdrops. Life saver! I was on a tight schedule that semester... Suffice to say I set a new university-wide record for number of units attempted simultaneously. Probably wasn't the best time to over-spec an assignment... =P

[edit] "Monday" (2004)

A text-based "Monday simulator"/adventure game written in C#.NET, written for a programming class during my undergraduate degree. Your mission: to find coffee at any cost before your first lecture starts.

[edit] University Siege (2003)

Text adventure game/engine with integrated editor. This was the first game project I made using the Java programming language.

I worked on this one with Bill Mioch (constructed much of the game world) and Alistair Johnson (handled the project documentation). Written for an undergraduate programming class.

[edit] Untitled Game Engine (2002/2003)

My first attempt at writing a "fully fledged" game engine, and also my first large-scale game project written in C++. Used OpenGL for graphics, DirectSound for audio and DirectInput for keyboard/mouse/joystick support. It had a "Quake-style" console with commands, variables and so on. I made a few prototype games with this engine, but nothing that ever passed the "alpha" stage unfortunately (or looking back at the code... perhaps fortunately?)

All-in-all it was a good learning experience.

[edit] Doom83 (2002)

A little project I contributed to; a tiny Z80 ASM "port" of id Software's Doom to run on the Z80 powered, 24K of RAM beast that is (or was) the Texas Instruments TI-83. I did the graphics for the later revisions of Doom83.

[edit] "Heavy Metal" (1998)

Written some time after Voles (I was now 15 I believe), this embarrassingly-titled game was a top-down shoot-em-up set in space. An epic story unfolded itself (or at least scrolled past) in the intro which, in the tradition of true shoot-em-up classics, bore no relation to actual gameplay whatsoever. Like Voles, this was written in C with DOS4GW.

[edit] Voles (Original) (1998)

The first game I ever "finished". It was created in a week during the winter school holidays of 1998 (I was 14 at the time), written in C using the Watcom compiler in DOS, with the DOS4GW 32-bit extender. The code was scratch-built; with the exception of the audio system, which was provided by a library called "Varmint's Audio Tools".

Check out Voles Classic to see roughly what the game was like. The protagonist and game-play are slightly different.