WEBGL
Reference:

created in touch designer.
Move the mouse around to change the light direction on the spheres.
Click on the canvas to restart motion.

Motion and Color
References:

Click and drag on canvas

Looped Animations
I decided to try and switch to coding in TouchDesigner, for easy visual understanding and workflow.
Patch:


