Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebGPURenderer: GaussianBlurNode reduce overhead #27447

Merged
merged 2 commits into from
Dec 27, 2023
Merged

Conversation

aardgoose
Copy link
Contributor

The use of a single QuadMesh for both gaussian blur passes results in a single RenderObject with a SampledTexture binding that alternates between source textures and triggers creation of new BindGroups and BindGroupLayouts every frame.

Using two QuadMesh objects prevents this behaviour.

@sunag sunag added this to the r161 milestone Dec 26, 2023
@Mugen87
Copy link
Collaborator

Mugen87 commented Dec 27, 2023

Not sure why but the E2E tests now complain a diff in webgpu_backdrop_water. I can't see one in the direct comparison though and the example does not even use gaussianBlur 🤔 .

https://rawcdn.githack.com/aardgoose/three.js/gb/examples/webgpu_backdrop_water.html
https://threejs.org/examples/webgpu_backdrop_water.html

@Mugen87
Copy link
Collaborator

Mugen87 commented Dec 27, 2023

It seems #27451 has the same issue. Maybe we exclude webgpu_backdrop_water from E2E tests in the meanwhile?

@sunag
Copy link
Collaborator

sunag commented Dec 27, 2023

It seems #27451 has the same issue. Maybe we exclude webgpu_backdrop_water from E2E tests in the meanwhile?

Agree! This way we can create a separate PR and study this problem more calmly.

@sunag sunag merged commit 54bc177 into mrdoob:dev Dec 27, 2023
10 of 11 checks passed
@aardgoose aardgoose deleted the gb branch December 31, 2023 14:24
AdaRoseCannon pushed a commit to AdaRoseCannon/three.js that referenced this pull request Jan 15, 2024
* use two quadmeshes

* add tip

---------

Co-authored-by: aardgoose <angus.sawyer@email.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants