Adds GPU particles visual tests#18232
Conversation
|
Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s). |
There was a problem hiding this comment.
Pull request overview
This PR establishes an initial visual-test baseline for GPU particle system features (via Playground snapshots) and fixes GPU uniform binding for the directed cone emitter so GPU particles render correctly.
Changes:
- Added GPU particles visual test entries to the visualization test
config.json(Playground IDs + reference images, WebGL1 excluded). - Added new PNG reference images for GPU particles visualization baselines.
- Fixed
ConeDirectedParticleEmitterGPU uniform setup by delegating toConeParticleEmitter’s shader/UBO bindings.
Reviewed changes
Copilot reviewed 2 out of 39 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| packages/tools/tests/test/visualization/config.json | Registers a suite of GPU particles visual tests (Playground + baseline image mapping). |
| packages/dev/core/src/Particles/EmitterTypes/coneParticleEmitter.ts | Fixes directed cone GPU uniforms/UBO layout by calling super.*, aligning with the base emitter’s radius/height float2 packing and other cone uniforms. |
| packages/tools/tests/test/visualization/ReferenceImages/gpu-particles-multiply-blend.png | Adds baseline image for multiply blend GPU particles test. |
| packages/tools/tests/test/visualization/ReferenceImages/gpu-particles-basic-translation-pivot.png | Adds baseline image for translation pivot GPU particles test. |
| packages/tools/tests/test/visualization/ReferenceImages/gpu-particles-basic-size.png | Adds baseline image for size GPU particles test. |
| packages/tools/tests/test/visualization/ReferenceImages/gpu-particles-basic-lifetime.png | Adds baseline image for lifetime GPU particles test. |
|
Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s). |
|
Snapshot stored with reference name: Test environment: To test a playground add it to the URL, for example: https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/18232/merge/index.html#WGZLGJ#4600 Links to test your changes to core in the published versions of the Babylon tools (does not contain changes you made to the tools themselves): https://playground.babylonjs.com/?snapshot=refs/pull/18232/merge To test the snapshot in the playground with a playground ID add it after the snapshot query string: https://playground.babylonjs.com/?snapshot=refs/pull/18232/merge#BCU1XR#0 If you made changes to the sandbox or playground in this PR, additional comments will be generated soon containing links to the dev versions of those tools. |
|
Visualization tests for WebGPU |
|
WebGL2 visualization test reporter: |
This PR adds GPU particles visual tests for all currently supported features. This is the first step to have a baseline so when implementing new GPU features we guarantee we are not regressing existing functionality.
It also fixes a small bug on directed cone emitter for GPU particles.