Stuart CupitProgramming or digital scratchngshome
Below are some of the projects and programs I've worked on over the years, ones which stick out for some reason. (Oldest items at the bottom, most recent at the top)

2008

Rainbow Floodfill - first attempt at using Processing, revisited an old theme and updated it, exported as java (click on the picture to run)

2006

Botox -

Photo++ - Utility to copy a bunch of digital photos off the camera or removable media renaming them with an incrementing filename. All the settings are remembered so one click is all it takes each time. All the usual features, base filename, starting number, number of digits in name, option to remove from camera media after copying, progress bar, etc. uses a nice file view class for directory browsing (thanks codeguru) and PeekMessage, PumpMessage to keep it responding to user input while processing. Download from here. (small print: I've used and tested this loads, however, download and use at your own risk! :)

2004

Organic -
A7
-
BlingBlinging -

Rotoscope - kind of a retro kaleidoscope with organic movement effect. only pastel colours. uses a bunch of classes, buffers, timers, random event triggers, not much interaction with sound, more ambient this one. OpenGL. Created as an iBox channel.
RetroGames -
Polymath - Uses feedback, draws the waveform of the sound onto a texture which is then drawn on screen mapped on to a grid of polygons. The grid is randomly distorted and transformed and the screen image then grabbed and used as the base texture for the next frame, creating the cool distorted feedback effect. OpenGL. Created as an iBox channel.

iBox - Developed the iBox. A product to deliver visually stunning graphics which interact with an external sound source for projection on the walls of clubs and bars - Interactive Architectural Lighting. First installed in the Rock Garden club in Covent Garden. Reviewed in Audio Visual Magazine. System has featured in numerous events, as we promote the system and develop its market presence.

VideoPuree -

Ambient Flock - After spending too long mesmerised by the organic lifelike emergent behaviors which result from incredibly simple rules. Based on a flocking demo I wrote several years ago, updated and ported to OpenGL. I had an idea to allow the boids (term coined for the flocking critters) to leave trails through space as they move. While messing with the code for these trails I added movement to them and the real crux of the demo was born. Moving the cloud of trails by different vectors produced a great parallax effect. Additive blending and a gradient texture produced a really nice soft trail. After weeks of tweaking I packaged it up as a screen saver. Published it online to promote Initions website hits with search engines (worked really well) got loads of feedback from users, still amazed by the net trail its left, one persons even cloned it for linux. Download from here. Also got turned into and iBox channel.

Start Inition ltd - Specialising in graphics related applications and 3D Virtual Reality hardware. Co founder with 5 others, located in central London. Fantastic challenge, starting our own company, fully owned by the staff and kicked off using our own money. We try to find a good work - life balance philosophy for the company, making a living while exploring the graphics we all enjoy.

2001

ICTS - Interventional Cardiology Training System - Project managed the UK side of this very ambitious heart surgery application. Real-time 3D X-ray view of the human chest with heart, veins and arteries, animated as a beating heart. Simulated blood flow through the vessels using a fluid dynamics simulation so it could react to changes in the artery geometry. Full collision detection between a catheter inserted in the leg into the artery, as it was pushed up into the heart. there were 3-8 people in the team we even hired two mathematicians to work on the collision dynamics. As part of VP's attempt to get another medical simulation product, Originally purchased from Mitsubishi in the USA. First version developed by Dwight Meglan. VP took on getting it to a commercial product, funded by Guident, a Belgium medical product manufacturer. Running on dual P3 800mhz with separate intercommunicating processes handling each part of the simulation. Although we completed many of the key parts this project was hopelessly over ambitious because of company political problems and was eventually sold to Mentis a Swedish simulation company along with MistVR.

Turbulence - Real-time OpenGl animation of turbulence, thousands of particles are emitted and flow up, modified by a turbulence function (borrowed from the source code for POV) really nice blend to get a soft smoky feel. Really quick bit of cut and paste coding. Has to bee seen moving. Uses OpenGl, Glut, POV. Requires hardware OpenGL texturing to work in real-time. Movie Download program

Millennium dome Stereo3D tour - Taylor Woodrow

 

ATF - Avionics Training Facility - Project managed the London and Manchester based development, about 8 people on and off for nearly two years. Real time 3D simulation of maintenance on a RAF Tornado fighter aircraft. We developed the graphics side and GEC developed the simulation side. Running on dual P2 400mhz PC's with triple headed graphics cards. Dismantled a Tornado aircraft in the hanger photographing the thousands of components. Modeled and textures the parts and assembled them back into a function simulation of the aircraft, allowing all switches, dials, displays to be fully interactive. largest project the company had taken on to date around £0.5million. Delivered and in use by the RAF. Included great multi process message passing layer. Full 3D rendering scene graph in Open GL. Networking between a classroom of stations for dual student learning and instructor snooping. Was cover article in Computer Graphics World magazine. See article. Movie1. Movie2.

Point cloud - This was my first OpenGl program :) simply drew thousands of points, lines or triangle and let you spin them around, until now I'd been using higher level toolkits, worldtoolkit or open inventor. Uses OpenGl and Glut. Download from here.

 

Virtual Tower Bridge - Was photographed and modeled as s demo then used as a training example for worldup.

 

Lloyds future trading - Project managed this Lloyds Bank vision of the future, share trading and portfolios visualised as a desert island location. Everything in the world represented some aspect of trading, a boat race for the share performance, messages in bottles washing up for new mail, etc.

Osteoporosis drug Novo Nordisk - Project managed an immersive visualisation to promote a new drug, classic trip through the body stuff, best bit of programming was dome by Mike Deluna with some meshed metasphere models to represent the degrading core of the bone.

Archery simulator - Project managed this game for Motorola. They were sponsoring the Olympics, and we came up with virtual archery game. We used a real bow and a compressed air absorber to allow the arrow to be fired without killing anyone. Some of my best mouse engineering; used the optical sensor from the mouse ball to track the bow being pulled back, a 6 degrees of freedom tracker to follow the bow aim. The user wore a head mounted display and stood on a podium with his view being projected behind him for the audience to watch. Was very popular, shown at CBIT consumer electronics show in Hamburg. Most memorable thing was the heating breaking down in our caravan accommodation but that's another story!

European space shuttle robotic arm simulator - Fokker Space Systems

Virtual Reality Sub Missile recovery simulator - Project managed and helped developed this fully immersive demo to allow the user to pilot a undersea rover to a stricken submarine, cut open the missile hatch and guide a crane grapple into place over the missile. This sort (and I had developed several variations, nuclear reactor decontamination, etc) proved very popular at trade shows and gave users a great feel for being immersed in a world using a 3DiStick to operate the robotic arm.

Virtual gas showroom - British Gas

Genesis - Project managed and developed with Chris Sutton a VRML 3D world authoring tool. Back in the days when the internet was unheard of and 3D over the internet was mostly wishful thinking, we used WorldToolKit C dev library to code most of the virtual worlds. Genesis allowed some interactive modeling and assembling of the 3D world with hooks back to the code to add interactivity. This was sold as a product, and ported to several 3D workstations, PC (running intel i860 boards), SGI (all platforms), SUN, Kubota, and some others I've no doubt forgotten. Good lesson in how hard it is to get a product to market, the old adage 'When you think your 80% of the way there you're probably only 50% there'.

Start work for Virtual Presence, specialising in virtual reality real time 3D graphics software and hardware, gain huge experience working with real time 3D vector graphics, PCs, motion tracking systems, HMDs - Head Mounted Displays, 3D input devices. Get to travel the world contracting working for a wide range of customers.

1992

Final year university project - Written in C and OCAM a parallel processing language which ran on the uni's Transputer array with sunny, john and darren. Memorable for being a full real time 3D virtual environment, written from the ground up,line and triangle plotting routines, scan line depth sorting for hidden face removal, hierarchy of objects and with advanced (before their time!) concepts like portals (polygons in the scene which contained rendered views from other viewpoints, and the term 'Thricon' for three dimensional icon, always seemed such a shame it never caught on.

Don't Panic - vertically scrolling arcade style shoot-em-up, coded mostly in assembler on the Archimedes. This was probably the most complete commercial game yet, sent it t various publishing houses and was told they would publish when it was finished. I think final year uni exams got in the way.

Hear with the clues - Port from the Amega to the archimedes, was published by SIC and I think Simon and I might even have received some up front payment and royalties from the tiny number that were sold. It was a really terrible murder mystery game, but kept us up for many an all night session at uni. At one point we ran out of memory and so without knowing the proper name invented an algorithm for RLE or run-length encoding for the pictures used.

1990

AIWID- 3D battle tank game clone, was published in Acorn User magazine as the cover article. Simon and I got paid £600 I think which paid for a skiing holiday to the Pyrenees. Pushed my 3D vector graphics skills to the limit, contained intelligent enemy tanks with gradually increasing difficulty at the algorithm they used to fire back became more accurate. coded in a mixture of BASIC and assembler (this was when magazine publishes full code listings for other sad people to type in at great length to get the game to run). When asked what AIWID stood for I think we were too embarrassed to say it meant All I Want Is Dosh, poor students.

Micro Fix - Advertising demo, manipulated the screen memory to create a rippling screen effect reminiscent of the many Amega demos around at the time. Was used in a computer shop in canterbury for advertising.

Scribble - Recursive coloured fill pattern generator .Published in Acorn User
magazine, think i got paid £30. As so often happens a bug produced an unexpected result which turned out to be much more interesting, getting one variable wrong and writing the depth of the recursion as the colour.

1987

Went to a computer show and got the first glimpse of an Acorn Archimedes, (a real computer) 256 colours and a high res (320x256) colour monitor, 512kb memory, wow. Had to get one, Jeremy and i saved everything and traded in the BBC and finally got one home. wrote hundreds of programs, getting to grips with 3D vector graphics, and developed own fast assembler line and triangle plotting routines and sprite drawing. Still remember discovering with Simon Cruse that you could divide the X and Y coordinates by the Z depth to get perspective.

1986

Moved from audio tape storage to 5 1/4 inch disk

BBC B+ at home, use a TV for a monitor, first we only had a black and white one, the after camping out in the sales managed to buy a colour one. 64k of memory, depending on the screen resolution as this used the same RAM. integrated memory architecture (a concept we could desperately do with on today's PS's) learned to code in 6502 assembler.

1985

Managed to get a computer at home, an Acorn Electron, we got the computer just before Christmas and were not allowed to use it until then. i was so keen to use it before christmas that i use to type in programs from magazines with no screen! to make sounds. only problem was one typeo and you couldn't see the code to correct it, desperate or what.
Really learnt to program on this thing, one bit that sticks our is grasping trig, sin and cos functions and their relation ship to circles, getting the computer to increment the angle while drawing points at sin(angle)*radius get you circles, a revelation.

Chart View - must have been the final year 'O' level exam project, on BBC B, drew bar charts... in colour!

1984

We were given computer science lesions (some of the first) and although i wrote numerous programs one that sticks out is...

Lunar lander - using a Commodore Pet, its this one which sticks out as Adrian Plats managed to get me to understand what variables are, radical stuff.

1983

Sub attack - first program ever written in BASIC, at school, during lunch hours because in the 3rd year we didn't officially get access to computers, on a Sinclair ZX-80, with 1k of memory! we had to type the whole program in from a magazine in one go as it couldn't be saved to anything. the game drew a blob for a gun placement and a blob for a sub and you had to enter a velocity and elevation, it then drew a graphical (more blobs) plot of the shell and let you know if you hit of missed the sub. and to think it was these graphics which got me hooked on computers. :)

 

home