120 Commits

Author SHA1 Message Date
Rezmason
c3254c3aa1 Adding WebGPU to TODO.md. Annotating the parts of the WebGPU code that involve uniform buffer layout issues. 2021-10-27 22:34:47 -07:00
Rezmason
c27c20f2cf Consolidating all the bind groups, because I only have four. Stuff shared between render passes will get isolated somehow, but it might be by binding one buffer to multiple render passes' bind group at zero rather than having more than one bind group. 2021-10-27 21:08:20 -07:00
Rezmason
a0649bdb34 Added screenSize in camera uniforms. 2021-10-27 20:51:22 -07:00
Rezmason
f2a54b3141 A little bit of shader variable renaming and const declaration during a walkthrough of the existing code on-stream 2021-10-27 20:00:39 -07:00
Rezmason
c716d30808 Merged the vertex and fragment shader WGSL files, because their bindings can't collide anyhow. The rain render shader now accepts a bind group of time uniforms, which change on every frame, as well as MSDF uniforms, along with an MSDF sampler and texture that's loaded in from the PNG. The shader currently renders the correct grid of quads for volumetric mode, displays the first glyph raw in each one, and every sixty frames, turns on and off the blue channel. 2021-10-27 19:04:02 -07:00
Rezmason
8c62146884 Fetching WebGPU shaders. Created my first bona fide pipeline. The vertex shader compares the built-in vertex index and the numRows/numColumns uniforms to produce a grid of quads with no vertex or index buffer whatsoever! 2021-10-27 19:04:02 -07:00
Rezmason
48a6f2cf34 Fixing a typo and adding looping functionality to the TODO list 2021-10-27 19:03:38 -07:00
Rezmason
69d4e7365c Renaming the shaders again, because the extensions I gave them were confusing GitHub's syntax highlighting. 2021-10-23 01:28:32 -07:00
Rezmason
cf5f8c2113 Simplifying rainPass.compute's weirder operations. 2021-10-23 01:12:31 -07:00
Rezmason
2265e3c937 Performing extensive cleanup and adding comments to rainPass.compute 2021-10-22 23:44:45 -07:00
Rezmason
af44126926 Renaming the data texture to "state" in the rain pass's render program 2021-10-22 22:58:10 -07:00
Rezmason
5c77e9b690 Renaming a value in highPass.frag 2021-10-22 22:57:37 -07:00
Rezmason
1a97861fed Resurrections version now vertically spaces the glyphs (groan). 2021-10-22 22:57:14 -07:00
Rezmason
6d8f5ba41a Overhauled the rainPass's support for the "operator" version of the effect. It now overrides the brightness of any glyph brighter than a threshold, which I think is a much clearer concept.
Also changed the way the glyphs cycle in the "operator" version, after noticing they only change once every four or five frames in the original effect.
2021-10-22 08:38:37 -07:00
Rezmason
7569246b5b Renaming rainPass shaders, and updating TODO. 2021-10-22 00:48:49 -07:00
Rezmason
d285697640 Documenting the passes and config variables. 2021-10-20 21:50:01 -07:00
Rezmason
4c6ff879fd Added some documentation, cleaned up some code, fleshed out the remaining work to make the project a little easier for newcomers to approach 2021-10-20 21:01:32 -07:00
Rezmason
f6e12ad795 Renaming renderer to rainPass, renaming its shaders, and cleaning up the main code a little. 2021-10-20 09:58:03 -07:00
Rezmason
4e88f68560 Whitespace fixes. 2021-10-20 08:26:16 -07:00
Rezmason
d8a1409907 Pushed virtually all the shader source into shader files that load as assets. 2021-10-20 03:20:46 -07:00