C++

C++ projects: OpenGL demos, raytracers, simulations, Windows tools and graphics effects. 13 articles.

API hooking for window image capture

A C++ class to get the full bitmap of any window, even obscured or offscreen, by redirecting GetDC and ReleaseDC.

29 April 2010

FakeServer

A Win32 console program that listens on a port and lets you talk to whatever connects, by typing into the console.

19 December 2009

Reflective sphere

Analytical reflections in OpenGL: reverse reflection mapping draws objects at their reflected positions inside a sphere in a second pass.

27 January 2008

Polychorons

Animated 3-dimensional Schlegel diagrams of 4-dimensional objects, in C++ and OpenGL.

25 January 2008

httpproxy

A Win32 console program that sends an HTTP request over a raw socket, built on LSOCK, a home-made buffered sockets layer.

28 July 2005

Fluid dynamics galaxy

Trying out a galaxy effect using an FFT-based fluid solver, where the force field on the liquid is gravitational.

29 March 2005

Galaxy simulation

Simulating gravity in a 2D wrap-around universe, from Java applets to a C++ version using FFT convolution for the force field.

1 January 2005

RTRay: a realtime raytracer

A realtime raytracer in C++: a classic scene with reflections and shadows, then cutting first-hit sphere tests with on-screen bounding boxes.

27 March 2002

Procedural city block

A procedural method (grid subdividing, random building generation) to create the layout of a city, in C++ and OpenGL.

16 July 2000

OpenGL ribbon

A Windows C++ OpenGL example: a ribbon effect, with full source.

26 January 2000

OpenGL patterns with cubes

Using a 3D grid of cubes to create shapes and patterns. You could say that these are very primitive voxels.

17 January 2000

Cloth simulation

A simple spring-mass grid simulates a piece of flexible material falling under gravity and slipping off objects.

13 October 1999

C++ graphics effects

C++ graphics experiments for Windows: a fractal universe generator, a pattern generator and its function networks, triangles, pixel text and polygon booleans.

1 June 1998