TODO: WebGPU std140 Right now, buildStruct packs an array, which is changed to a typedarray and fed to a GPUBuffer That limits the type to whatever the typedarray is Instead, we need to represent the type of each value, and write it as such Create an array buffer Create a Float32Array view into it, and an Int32Array view Transcribe the values into these views Return the array buffer Write an explanation of the rain pass (and include images) Compute Volumetric quads Fullscreen quad and spacial mapping MSDFs Support looping Resurrection Modified glyph order? New glyphs? Good luck with that, champ Audio Synthesize raindrop sound Use WebAudio to mess with it Idea: Build a UI Changes some uniforms Effect selection would swap out the desired effect pass, somehow The color palette stuff would be hard Experiment with varying the colors in the palette pass Maybe a separate palette for the non-bloom Maybe dim and widen the bloom Just make sure the changes to non-default configurations are acceptable Maybe try and accomplish the effect in Photoshop, to get a sense of what's going on Deja vu effect: flashing rows Make them flash all the time Then use a thunder-like pattern to show and hide the flash