Skip to content

Add test for invalid skinned meshes #18763

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

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

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
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-Needs-Review Needs reviewer attention (from anyone!) to move forward X-Uncontroversial This work is generally agreed upon
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants