Solid Noise Synthesizer

A filtered noise generator.

Solid Noise Synthesizer preview

My masters research project was an investigation into solid filtered procedural noise algorithms. It was also the first macOS app I built.

About Solid Noise Synthesizer

A closer look.

Make some noise

Make some noise. Solid Noise Synthesizer allows users to generate filtered procedural noise using 25 years worth of algorithms.

Notable options include Perlin Noise, Wavelet Noise, Sparse Convolution Noise, 4D Noise, Better Gradient Noise and Sparse Gabor Convolution.

Spectral analysis

Spectral analysis. I included an FFT analysis feature that transformed generated noise textures into the frequency domain.

This helped users to identify artefacts, evaluate randomness, and compare the spectral properties of different noise algorithms.

From 2D to 3D

From 2D to 3D. The app was able to display any noise algorithm in 3D to show how noise slices in the third dimension.

Instead of attempting to convert each algorithm to a shader, I made the app render three 2D textures as faces of a cube.

Setting the benchmark

Setting the benchmark. Another feature of the app was benchmarking, which pitted the various noise algorithms against one another in a performance computation sprint.

Quick noise

Quick noise. I ended up developing my own solid noise algorithm named 'Quick Noise'. It was fast to compute and fixed up grid-alignment issues that Perlin Noise was known for.

I produced various flavours of my algorithm as trade-offs between speed and quality, which could all be tested in the app.

Collaborations
Role
  • Postgraduate student
Category
macOS App
Completed
February 2010
Skills
  • macOS, Objective-C, OpenGL
  • Cocoa, Carbon, AppKit
  • FFT, QuickTime