Skip to content

Conversation

greeble-dev
Copy link
Contributor

@greeble-dev greeble-dev commented Apr 8, 2025

Objective

Add a test that would have caught #16929 and #18712.

Solution

The PR adds a test_invalid_skinned_mesh example that creates various valid and invalid skinned meshes. This is designed to catch panics via CI, and can be inspected visually. It also tests skinned meshes + motion blur.

417958065-37df8799-b068-48b8-87a4-1f144e883c9c

The screenshot shows all the tests, but two are currently disabled as they cause panics. #18074 will re-enable them.

Concerns

  • The test is not currently suitable for screenshot comparison.
  • I didn't add the test to CI. I'm a bit unsure if this should be part of the PR or a follow up discussion.
  • Visual inspection requires understanding why some meshes are deliberately broken and what that looks like.
  • I wasn't sure about naming conventions. I put test in the name so it's not confused with a real example.

Testing

cargo run --example test_invalid_skinned_mesh

Tested on Win10/Nvidia, across Vulkan, WebGL/Chrome, WebGPU/Chrome.

@alice-i-cecile alice-i-cecile added A-Rendering Drawing game state to the screen A-Animation Make things move and change over time C-Testing A change that impacts how we test Bevy or how users test their apps X-Uncontroversial This work is generally agreed upon S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Apr 8, 2025
@alice-i-cecile alice-i-cecile added this to the 0.17 milestone Apr 8, 2025
@alice-i-cecile alice-i-cecile added the D-Straightforward Simple bug fixes and API improvements, docs, test and examples label Apr 23, 2025
@janhohenheim janhohenheim added S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it and removed S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Jul 7, 2025
@alice-i-cecile alice-i-cecile added this pull request to the merge queue Jul 7, 2025
Merged via the queue into bevyengine:main with commit 0f75142 Jul 7, 2025
36 checks passed
@github-project-automation github-project-automation bot moved this to Done in Rendering Jul 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Animation Make things move and change over time A-Rendering Drawing game state to the screen C-Testing A change that impacts how we test Bevy or how users test their apps D-Straightforward Simple bug fixes and API improvements, docs, test and examples S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it X-Uncontroversial This work is generally agreed upon
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants