As a first step towards learning Javscript and WebGL, I made a basic cube with the following features:
- used dat.GUI to allow interactively changing the cube's color,
- used 3D perlin noise to apply coloration to the cube's surface, and
- used basic sinusoidal functions of time to distort the mesh geometry and color.
Live Demo