A uniform driven by the game. The values handed to createMaterial are kept, not copied, so the object you passed in is the one the renderer reads: write a number into it and the next frame draws with it. That is how gameplay state (health, a combo meter, a held button) feeds straight into a shader.
Here mu.time drives the automatic throb while charge goes there and back between 0 and 1. The sprite on the left has no material at all, to compare against.