mirror of
https://github.com/Rezmason/matrix.git
synced 2026-04-14 12:29:30 -07:00
96 lines
2.9 KiB
Plaintext
96 lines
2.9 KiB
Plaintext
TODO:
|
|
|
|
Test all the versions!
|
|
|
|
Reformulate the basis
|
|
https://buf.com/films/the-matrix-resurrections
|
|
Rain pass frag's output should match its debug view output
|
|
Move brightness and contrast logic to the later passes
|
|
The channels get individually blurred
|
|
Then the other passes use the red, green and blue channels for separate things
|
|
red: cursor
|
|
green: long tail
|
|
blue: short tail
|
|
Tune the colors
|
|
New config properties
|
|
Find a way to support the old stuff?
|
|
Migrate to WebGPU
|
|
|
|
Audio system
|
|
Toggle (or number representing frequency)
|
|
Load the sound effect
|
|
Play it multiple times with delay
|
|
Random pan
|
|
Random volume?
|
|
Randomize pitch a little?
|
|
|
|
Playdate version
|
|
Audio system
|
|
Falling sound
|
|
Launch sound
|
|
Undocking sound
|
|
Docking sound
|
|
Maybe crank sounds? Not sure yet
|
|
|
|
Resurrections
|
|
Support anomaly streaks
|
|
MSDF
|
|
They should line up in Photoshop without too much trouble, actually
|
|
Texture
|
|
Maybe give normal Matrix code a pixel grill texture
|
|
Lighting
|
|
Different parts of a streak glow at different intensities, at different times
|
|
The streaks often dim slower, ie. are brighter, than the glyphs beneath them
|
|
Imagine they're metallic or something
|
|
Support SDF bevel and "lights"
|
|
https://shaderfun.com/2018/07/23/signed-distance-fields-part-8-gradients-bevels-and-noise/
|
|
Get the "normals" and color right
|
|
Note: even completely dark glyphs can have glint on their edges
|
|
"Golden hour"
|
|
|
|
WebGPU
|
|
Why is it brighter than the regl version?
|
|
Create a project that tests them side-by-side
|
|
That's right, two canvases, one regl and one webgpu
|
|
program them both to do the same basic ops in a floating point texture
|
|
display that texture
|
|
Retrieve the texture from the GPU and spit it out
|
|
Possible causes of difference
|
|
Color space
|
|
Floating point math
|
|
Texture interpolation
|
|
Blur implementation
|
|
Try https://github.com/brendan-duncan/wgsl_reflect
|
|
Get rid of end pass once it's possible to copy a bgra8unorm to a canvas texture
|
|
Switch to rgba32float somehow?
|
|
Why isn't this straightforward?
|
|
Try shorthand
|
|
Share a bind group and layout just for time?
|
|
Try using a buffer for the stripe pass 1D texture
|
|
|
|
Improve loop support
|
|
|
|
Write an explanation of the rain pass (and include images)
|
|
Compute
|
|
Volumetric quads
|
|
Fullscreen quad and spacial mapping
|
|
MSDFs
|
|
|
|
Zion Control's matrix variant
|
|
From Reloaded
|
|
|
|
Idea: Build a UI
|
|
Changes some uniforms
|
|
Effect selection would swap out the desired effect pass, somehow
|
|
The color palette stuff would be hard
|
|
|
|
Deja vu effect: flashing rows
|
|
Make them flash all the time
|
|
Then use a thunder-like pattern to show and hide the flash
|
|
|
|
gpu-buffer, working title
|
|
Support type aliasing (type Q = array<i32, 5>)
|
|
Support shorthand (vec4f)
|
|
Build mocha tests, example project
|
|
Give it its own repo, microsite
|