Rezmason
dc4032e42a
A little reorganization of methods in the passes.
2021-11-10 18:10:26 -08:00
Rezmason
f4130013f4
Moved the makePyramid and resizePyramid methods from the regl solution's util module to bloomPass.
...
Adding the canvas context's preferred format to the shared pass context (named "canvasFormat").
Added a placeholder bloomPass, which the existing passes now receive input from.
2021-11-09 20:06:59 -08:00
Rezmason
87c2093281
Unifying the interfaces of regl and webgpu makePass and makePipeline.
2021-11-09 09:17:01 -08:00
Rezmason
6586badf42
The WebGPU rainPass now performs a high pass filter on its own fragments. I think I prefer this to a separate high pass filter, because this one is pre-blendfunc, ie. fragments will only be added to the texture if they are individually bright enough to contribute.
2021-11-09 07:08:07 -08:00
Rezmason
a143e3fc03
Renamed gpu-uniforms to gpu-buffer, and messed around with its API.
...
I believe all the align, size, stride and byteOffset values are now in the proper units, ie. bytes.
2021-11-08 22:56:00 -08:00
Rezmason
cf02073ff3
Added orthographic projection and a profile angle to the volumetric mode when effects are off.
2021-11-08 09:47:56 -08:00
Rezmason
bbe3d62331
Wrote another utility method for cramming an array of resources into a bind group.
2021-11-08 08:05:56 -08:00
Rezmason
1528ca39a5
Commenting out the tables and adding select to some shaders in place of the original ternary operator.
2021-11-08 03:45:06 -08:00
Rezmason
415ffa77ee
Driving more uniforms.read calls from the actual shaders.
2021-11-08 03:01:46 -08:00
Rezmason
61a3a6d783
Moved the WebGPU code off of "std140" and onto gpu-uniforms.
2021-11-08 02:23:33 -08:00
Rezmason
bd3d0c76d2
Fixing the names of shaders in the passes. The loadShader utility function now returns the code and the module, since I'm hoping to parse uniform buffer layouts from the code.
2021-11-07 00:41:25 -07:00
Rezmason
bade1667ad
Making some comments in the WebGPU rainPass and changing the "effect=none" view to be easier on the eyes.
2021-11-06 15:19:56 -07:00
Rezmason
89b9f4e363
Ported all the post processing regl passes to WebGPU. Fixed the CORS stuff in loadTexture. Renamed createRenderTargetTexture to makePassFBO, to conform with the regl project. Added make1DTexture, which stripePass uses.
2021-11-06 05:03:16 -07:00
Rezmason
230847e5b8
Added runtime texture targets. A pass now returns its resources in getOutputs(), which subsequent passes access as getInputs().
2021-11-05 01:06:39 -07:00
Rezmason
f0ae7731bb
The webgpu project's multi-pass pipeline is borrowed from the regl project, but the outputs don't exist yet. Outputs will be tricky, because RTTs are thrown out and recreated when the canvas resizes, which I think means all the bind groups referencing the old texture have to be destroyed and recreated, too.
2021-11-03 21:42:01 -07:00
Rezmason
0b04947425
Implemented makePass(). Moved rain compute and render stuff into a pass.
2021-11-03 21:30:22 -07:00