diff --git a/TODO.txt b/TODO.txt index dfdd23e..b6b783f 100644 --- a/TODO.txt +++ b/TODO.txt @@ -2,7 +2,6 @@ TODO: WebGPU First decent rainRender - What's wrong with the other font textures? Port compute pass 100% Compute entry point can live in the same wgsl file, I think use textureLoad for texel access in render pipeline diff --git a/shaders/glsl/rainPass.frag.glsl b/shaders/glsl/rainPass.frag.glsl index 2dafbd2..60a175e 100644 --- a/shaders/glsl/rainPass.frag.glsl +++ b/shaders/glsl/rainPass.frag.glsl @@ -25,7 +25,7 @@ float median3(vec3 i) { vec2 getSymbolUV(float glyphCycle) { float symbol = floor(glyphSequenceLength * glyphCycle); float symbolX = mod(symbol, glyphTextureColumns); - float symbolY = ((glyphTextureColumns - 1.0) - (symbol - symbolX) / glyphTextureColumns); + float symbolY = glyphTextureColumns - floor(symbol / glyphTextureColumns); return vec2(symbolX, symbolY); } diff --git a/shaders/wgsl/rainRenderPass.wgsl b/shaders/wgsl/rainRenderPass.wgsl index a04f755..5048724 100644 --- a/shaders/wgsl/rainRenderPass.wgsl +++ b/shaders/wgsl/rainRenderPass.wgsl @@ -129,7 +129,7 @@ fn wobble(x:f32) -> f32 { var uv = (quadPosition + quadCorner) / quadGridSize; // Retrieve the quad's glyph data - var vGlyph = vec4(1.0, 0.72, randomFloat(vec2(quadPosition.x, 1.0)), 0.0); // TODO: texture2D(state, quadPosition / quadGridSize); + var vGlyph = vec4(1.0, 0.0, randomFloat(vec2(quadPosition.x, 1.0)), 0.0); // TODO: texture2D(state, quadPosition / quadGridSize); // Calculate the quad's depth var quadDepth = 0.0; @@ -181,7 +181,7 @@ fn median3(i:vec3) -> f32 { fn getSymbolUV(glyphCycle:f32) -> vec2 { var symbol = i32(f32(msdf.glyphSequenceLength) * glyphCycle); var symbolX = symbol % msdf.glyphTextureColumns; - var symbolY = ((msdf.glyphTextureColumns - 1) - (symbol - symbolX) / msdf.glyphTextureColumns); + var symbolY = symbol / msdf.glyphTextureColumns; return vec2(f32(symbolX), f32(symbolY)); }