C++ :: OpenGL
|
|||||||||||
|
A little project demonstrating how to get particles (or anything else for that matter) to react to a heightmap and flow and bounce down the sides of the terrain. Full C++ source included.
|
|
||||||||||||
Pulsar has been in development since 2003 and is one of my first C++ projects. It uses the awsome FMod sound library, so it is capable of playing MP3,WAV,WMV,MID files and even MPG and AVI soundtracks.
(Unfortunately no source for this project)...
|
|
Commercial
|
|||||||||||
|
A screensaver I wrote for Lucidocean, an IT company based on the Isle of Wight. It consists of the spinning logo in the foreground and a background of cellular like structures blurred out of focus with a simple render-to-texture technique.
|
|
|||||||||||
Chrome is a visualisation plugin I developed for the popular music making software FL Studio. It uses triggered notes and parameters to animate preset scenes to the current song.
|
|
|
||||||||||||
|
This program schedules a meet-the-teachers event at a school. It matches a list of parents to the respective teachers they want to see within a certain timeframe divided into timeslots.
A demonstration version is avaliable on this site.
|
Delphi :: OpenGL
|
|||||||||||
A small demo which shows how to load a heightmap into OpenGL and display the terrain with a texture and normals. The terrain is encapsulated within a class which loads a heightmap from a bitmap picture, calculates surface normals and draws the heightmap optimally.
|
|
|
|||||||||||
|
An example program which uses a font loading unit (Font4.pas) to load fonts generated by the Font Studio project. (Updated to Version 4)
|
|
|||||||||||
There is something special about visuals which go with music. This project shows how to get FMod to output the frequency spectrum of whatever it's playing at that moment, then uses the output to display a very satisfying lightshow. The only limit on the effects is your imagination!
|
|
|
|||||||||||
|
A work in progress.
|
|
|||||||||||
Castle Adventure is based on the 1980's game by the same name. It's still in production and this is just a beta preview.
|
|
|
|||||||||||
|
Another great effect, this time it's a particle-based smoke effect. The program is ment to be kind of like a screen saver (Fullscreen, gentle and mesmerising) but if it doesnt like your screen (needs 85hz refresh rate at 800x600), just open up the config.txt file and edit the screen sizes, there is explanations in the file.
|
|
|||||||||||
Another nice effect, this time it's a feedback effect: your cursor effects a map of forces then a grid of particles are pushed around by those forces. Rather like twisting a sheet of plastic into a wierd shape then pouring tiny balls onto it!
|
|
|
|||||||||||
|
This project was my early attempt at physically modeling spring compression and reaction. Following a Gamasutra tutorial on springs and Hooke's law, I wrote this program to simulate a cloth which interacts with a plane and a sphere.
|
|
|||||||||||
A program I wrote while figuring out how to load 3DS files. Any serious game or intro needs models, and 3DS is the easiest and most common way to get them. Unfortunately, understanding the structure of the files can be quite tricky at first, but luckily I've done all the hard work for you and packaged it all in a unit (Load3DS.pas) for easy intergration into any OpenGL program.
|
|
|
|||||||||||
|
A small project showing a cool lightning like effect. The code is very well documented and deals with linked lists or rather linked trees, using pointers. Some interesting recursive code here..
|
|
|||||||||||
The Foundry was my entry into the 2002 Gamedev.net 4e3 competition. (it came 5th out of ~40 entries) The competition centered around making a demo which displayed each of the four elements; Earth, Water, Fire and Air. Rather than make a boring terrain engine with water like most did, I opted for originality.
|
|
Delphi :: Win32
|
|||||||||||
|
Writing your own programming language is one of those milestone projects that every programmer should attempt at least once.. Apart from being rediculously fun to do, it also teaches you a lot about how to structure code and why your compilers work the way they do.. So this is my attempt at a scripting language.
|
|
|||||||||||
This small project demonstrates how to dynamically load and communicate with DLL files from within a parent application.
As long as each DLL has a common interface with the outside world, each can perform a completely independent task. And because the DLL and parent application share memory spaces, you can pass classes and pointers between the two without having to worry about access violations.
|
|
|
|||||||||||
|
I've revisited one of my older projects, the Lightmapper. While lightmappers arent exactly bleeding edge these days, they confront a lot of complex problems with usefull and multipurpose solutions.
|
|
|||||||||||
If you doing any work with pixel shaders, you going to need some normal maps sooner or later. Well, I wasn’t impressed with the normal map generation programs out there at the moment, so I built my own.
|
|
|
|||||||||||
|
This is an example of using Delphi's built in TTCPclient and TTCPserver objects (Delphi 7 that is) to create a networking client and server.
|
|
|||||||||||
A little project demonstrating matrixes and their effect on a 3D object.
|
|
|
|||||||||||
|
Cellular Automata are a type of simulation where elements represent single-celled organisms. The survival and propagation of these cells are governed by very simple rules, such as how many neighbouring cells are alive and how many are required for new cells to be 'spawned'. This program allows you to interactively run a CA simulation and change the rules on the fly, as well as spawn your own cells.
|
|
|||||||||||
This project has been superceeded by Lightmapper 2
|
|
|
|||||||||||
|
A demonstration that 3D acceleration isnt everything. Firestorm uses a 24-bit drawing surface with a 1024 colour palette to draw a particle engine at about 95fps average (for a 400x400 surface with 10000 particles on a 1.5ghz AMD) with the aid of FastLib. This can be blended with a 24bit background (additive or straight blending).Firestorm offers a completely interactive tool for generating cool looking fire effects. Change one of the numerous sliders to the right of the fire and watch it change in real time. Also in this version is the ability to draw your own emitting maps (a series of points for the fire to originate from), and attractor and detractor modes. These modes change your mouse cursor into a magnet which affects each particle in real time. You can also make your own palettes, to change the colour of the fire very easily and on the fly. Unfortunately no source is given with this project.
|
|
|||||||||||
A simple project which demonstrates beizer curves and interpolations.
|
|
|
|||||||||||
|
A break from my normal projects, I was asked to create a program which allows you to create crosswords easily and print them out. This was the result after a few days of coding. It's a very simple program but maybe someone will find some use for it.
|
Tools
|
|||||||||||
Font Studio 4.1 is here!
|
|
|
|||||||||||
|
This project opens .Package files used in The Sims 2 and SimCity 4 and can extract the files they contain.
|
|
|||||||||||
While playing Diablo 2 on the Hardcore skill level, you get better items and more experience, quicker. But there is always the danger of dying because hardcore characters cannot be resurrected.
|
|
|
|||||||||||
|
A professional looking application I developed for fun. It loads NFS 6 cars and allows you to view them with almost as good graphics as in the game. It's a bit tricky to use because you first have to read the help file! and extract all the data out of the resource files that come with the game. The help file shows you how to do this, with what tools and where to get them.
|