The interactive fluid simulation and 'Lorenz Attractor' above are part of a series of experiments I've been making in Apple Metal — a programming framework for low-level, real-time graphics on the Apple line of GPUs.
At this level, you're basically writing bytes directly to the graphics card. The physics in the fluid simulation above — a classic "heightfield" solver — happen in what's called a Compute Shader, which runs on the GPU. This project was challenging, but rewarding. The advantage of working close to the metal is incredible performance — hundreds of thousands of points, processed in real time.
The Lorenz Attractor simulation — based on a set of differential equations from Chaos Theory — consists of one million particles, animated in real-time, once again using Metal Compute Shaders to get the most horsepower.
I spent years making 'offline' computer graphics, in which a single image could take hours or even days to render. Working in real-time graphics shares the same underlying mathematics, but in many ways is an entirely different art. What fascinates me the most about real-time graphics is the type of human-computer interactions it affords. When you find ways to optimize graphics so that people can interact with them in real-time, a whole new world opens up — something people are discovering with the resurgence of virtual reality.
Fluid Simulation, iOS application, 2019.
I sculpted this model around 2007, over several months time. It began as a simple cube, which was extruded and shaped into the rough proportions of the figure. The model was then smoothed by subdividing the mesh into more contour lines, which were sculpted in finer detail. The process of sculpting, subdividing, and refining was repeated several times.