mirror of
https://github.com/Rezmason/matrix.git
synced 2026-04-22 23:59:31 -07:00
Renaming rainPass shaders, and updating TODO.
This commit is contained in:
32
TODO.txt
32
TODO.txt
@@ -1,37 +1,31 @@
|
|||||||
TODO:
|
TODO:
|
||||||
|
|
||||||
|
|
||||||
Improve forkability
|
Improve forkability
|
||||||
Should the OPERATOR and PARADISE specific config values still exist?
|
Should the OPERATOR and PARADISE specific config values still exist?
|
||||||
Rename compute.frag to rain.compute
|
Document every variable, method, and section of the main function in rainPass.compute
|
||||||
Rename bloom tex to blur tex
|
|
||||||
And rename bloom pass to blur pass
|
|
||||||
Document every variable, method, and section of the main function in compute.frag
|
|
||||||
Maybe rewrite it? Make the time based stuff easier to read?
|
Maybe rewrite it? Make the time based stuff easier to read?
|
||||||
|
|
||||||
Write a document (and include images) that explains the underlying principle of the rain pass
|
Write a document (and include images) that explains the underlying principle of the rain pass
|
||||||
|
|
||||||
Create interactive controls?
|
|
||||||
Is the pipeline stuff just too bizarre?
|
Is the pipeline stuff just too bizarre?
|
||||||
|
|
||||||
|
|
||||||
Resurrection
|
Resurrection
|
||||||
Modified glyph order?
|
Modified glyph order?
|
||||||
|
|
||||||
Post processing
|
|
||||||
Radial hue shift
|
|
||||||
Blue in top center
|
|
||||||
Yellow in bottom corners
|
|
||||||
Blurring towards the edges, like a tilt-shift effect
|
|
||||||
Maybe adjust the bloom pass's sampling based on distance to center
|
|
||||||
|
|
||||||
Upward glyphs?
|
|
||||||
|
|
||||||
New glyphs?
|
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
|
Experiment with varying the colors in the palette pass
|
||||||
@@ -44,9 +38,3 @@ Experiment with varying the colors in the palette pass
|
|||||||
Deja vu effect: flashing rows
|
Deja vu effect: flashing rows
|
||||||
Make them flash all the time
|
Make them flash all the time
|
||||||
Then use a thunder-like pattern to show and hide the flash
|
Then use a thunder-like pattern to show and hide the flash
|
||||||
|
|
||||||
Sounds
|
|
||||||
Raindrop sound
|
|
||||||
Deja vu sound
|
|
||||||
ripple sound
|
|
||||||
And some kind of ambient sound that they play over
|
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ export default (regl, config) => {
|
|||||||
wrapT: "clamp",
|
wrapT: "clamp",
|
||||||
type: "half float",
|
type: "half float",
|
||||||
});
|
});
|
||||||
const computeFrag = loadText("shaders/compute.frag");
|
const rainPassCompute = loadText("shaders/rainPass.Compute");
|
||||||
const computeUniforms = {
|
const computeUniforms = {
|
||||||
...commonUniforms,
|
...commonUniforms,
|
||||||
...extractEntries(config, [
|
...extractEntries(config, [
|
||||||
@@ -100,8 +100,8 @@ export default (regl, config) => {
|
|||||||
|
|
||||||
// We render the code into an FBO using MSDFs: https://github.com/Chlumsky/msdfgen
|
// We render the code into an FBO using MSDFs: https://github.com/Chlumsky/msdfgen
|
||||||
const msdf = loadImage(regl, config.glyphTexURL);
|
const msdf = loadImage(regl, config.glyphTexURL);
|
||||||
const renderVert = loadText("shaders/rain.vert");
|
const rainPassVert = loadText("shaders/rainPass.vert");
|
||||||
const renderFrag = loadText("shaders/rain.frag");
|
const rainPassFrag = loadText("shaders/rainPass.frag");
|
||||||
const output = makePassFBO(regl, config.useHalfFloat);
|
const output = makePassFBO(regl, config.useHalfFloat);
|
||||||
const renderUniforms = {
|
const renderUniforms = {
|
||||||
...commonUniforms,
|
...commonUniforms,
|
||||||
@@ -166,13 +166,13 @@ export default (regl, config) => {
|
|||||||
primary: output,
|
primary: output,
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
compute({ frag: computeFrag.text() });
|
compute({ frag: rainPassCompute.text() });
|
||||||
regl.clear({
|
regl.clear({
|
||||||
depth: 1,
|
depth: 1,
|
||||||
color: [0, 0, 0, 1],
|
color: [0, 0, 0, 1],
|
||||||
framebuffer: output,
|
framebuffer: output,
|
||||||
});
|
});
|
||||||
render({ camera, transform, screenSize, vert: renderVert.text(), frag: renderFrag.text() });
|
render({ camera, transform, screenSize, vert: rainPassVert.text(), frag: rainPassFrag.text() });
|
||||||
},
|
},
|
||||||
(w, h) => {
|
(w, h) => {
|
||||||
output.resize(w, h);
|
output.resize(w, h);
|
||||||
@@ -180,6 +180,6 @@ export default (regl, config) => {
|
|||||||
glMatrix.mat4.perspective(camera, (Math.PI / 180) * 90, aspectRatio, 0.0001, 1000);
|
glMatrix.mat4.perspective(camera, (Math.PI / 180) * 90, aspectRatio, 0.0001, 1000);
|
||||||
[screenSize[0], screenSize[1]] = aspectRatio > 1 ? [1, aspectRatio] : [1 / aspectRatio, 1];
|
[screenSize[0], screenSize[1]] = aspectRatio > 1 ? [1, aspectRatio] : [1 / aspectRatio, 1];
|
||||||
},
|
},
|
||||||
[msdf.loaded, computeFrag.loaded, renderVert.loaded, renderFrag.loaded]
|
[msdf.loaded, rainPassCompute.loaded, rainPassVert.loaded, rainPassFrag.loaded]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user