Many Scene's use a background Shader
and the Only real Difference from one scene to the Next is what Shader is used for the background.
If you create a set of shaders that all accept the same uniform values, or don't use any uniform inputs,
then is it possible to select the background shader at random, like we can with background textures?
I've tested many different syntaxes for the shader and have not found a way to do it.
So I decided to write my own utility that gets a list of all the shaders in the folder
and it picks one at random, and creates a New shader called Random.fsh by making a copy of the randomly selected shader.
In your Scene file you then just define the shader as Random.fsh
sprite {
source: solid
size: 1920, 1080
hotspot: 0.5, 0.5
pos: 0, 0, 0
shader: fragment, shaders/Random.fsh
}
Now the Random Shader app runs in the background every 5 seconds and changes the shader.
The Shader change is NOT dynamic, you won't see a Shader change Mid Scene
but each time the scene is restarted a new background is seen.
each time the scene is played, there is a random shader applied.
( because it is random, it is possible to get the same shader multiple times in a row )
But the more shaders placed in the folder, the more it will be different.
you have to Manually Start the Random Shader App
then minimize the app to the task bar.
One Scene file, Many different Shaders for the Background.