Rezmason
|
a6c88913f5
|
A pipeline is now an object with a build method and a run method. The build method returns the last step's outputs object.
|
2022-05-03 12:07:54 -07:00 |
|
Rezmason
|
928067996d
|
The primary and bloom textures are now combined with a weight so that fainter bloom doesn't create a fainter overall effect.
|
2021-12-24 21:44:16 -08:00 |
|
Rezmason
|
25e9f10f69
|
Adding "updated" glyph set from The Matrix Resurrections, and a corresponding effect version.
|
2021-12-11 22:21:24 -08:00 |
|
Rezmason
|
577e94c7d1
|
Moving bloomPass's pyramids off of mipmaps fixes its appearance in Firefox Nightly
|
2021-12-06 07:34:04 -08:00 |
|
Rezmason
|
d19f78319b
|
Rewrite loadTexture, for now, to use GPUQueue::writeTexture (from data supplied by a CanvasContext2D) instead of GPUQueue::copyExternalToTexture (from createImageBitmap).
|
2021-12-04 15:40:33 -08:00 |
|
Rezmason
|
1b61e304a5
|
Refactoring the pass and pipeline, so that inputs and size are handed to and returned from the build function (formerly setSize). This is now the earliest place to build bind groups, which makes sense, because it's also the earliest place to create textures that are proportional to the size of the canvas.
|
2021-11-15 00:30:09 -08:00 |
|
Rezmason
|
b0a4acdfdb
|
Rewrote the WebGPU bloom pass based on the classic Unreal solution of blurring and combining the levels of an image pyramid. Fixed the regl bloom pass to use the downscaled blurred mipmap levels to build the first pyramid.
|
2021-11-14 23:09:29 -08:00 |
|
Rezmason
|
9ad655ca2e
|
Created a pass-through post processing compute pass. The other post-processing passes will be changed over to this kind of thing.
makePassFBO has now been split into makeRenderTarget and makeComputeTarget.
|
2021-11-11 09:18:32 -08:00 |
|
Rezmason
|
9c861fd50b
|
Replacing the final copyToTexture call with a tiny render pass, so that the postprocessing passes can be compute shaders working off of storage textures instead.
|
2021-11-11 08:24:30 -08:00 |
|
Rezmason
|
87c2093281
|
Unifying the interfaces of regl and webgpu makePass and makePipeline.
|
2021-11-09 09:17:01 -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
|
bbe3d62331
|
Wrote another utility method for cramming an array of resources into a bind group.
|
2021-11-08 08:05:56 -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
|
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 |
|
Rezmason
|
f8959cd7d9
|
Renaming msdfSampler to linearSampler; adding loadShaderModule utility method; busting the rain render out of its render bundle (which won't be useful long-term).
|
2021-11-03 20:01:59 -07:00 |
|
Rezmason
|
8048c9c690
|
That's funny, you can blob a fetch response and chuck it into createImageBitmap().
|
2021-11-02 23:19:54 -07:00 |
|
Rezmason
|
33437a722d
|
Finding ways to construct WebGPU descriptors more concisely. Moving some functions to webgpu's utils.js.
|
2021-10-30 08:40:42 -07:00 |
|