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

Add a stress test for animating materials #11588

Closed
alice-i-cecile opened this issue Jan 28, 2024 · 1 comment · Fixed by #17346
Closed

Add a stress test for animating materials #11588

alice-i-cecile opened this issue Jan 28, 2024 · 1 comment · Fixed by #17346
Labels
A-Animation Make things move and change over time A-Rendering Drawing game state to the screen C-Benchmarks Stress tests and benchmarks used to measure how fast things are D-Trivial Nice and easy! A great choice to get started with Bevy

Comments

@alice-i-cecile
Copy link
Member

          I'd like to unbreak CI, but we should make a stress-test version of this to deliberately expose the performance issues that motivated its creation.

Originally posted by @alice-i-cecile in #11576 (comment)

@alice-i-cecile alice-i-cecile added D-Trivial Nice and easy! A great choice to get started with Bevy A-Rendering Drawing game state to the screen A-Animation Make things move and change over time C-Benchmarks Stress tests and benchmarks used to measure how fast things are labels Jan 28, 2024
@alice-i-cecile
Copy link
Member Author

Previously: #11516.

github-merge-queue bot pushed a commit that referenced this issue Jan 24, 2025
# Objective

- This PR adds a new stress test called `many_materials` to benchmark
the rendering performance of many animated materials.
- Fixes #11588 
- This PR continues the work started in the previous PR #11592, which
was closed due to inactivity.

## Solution

- Created a new example (`examples/stress_tests/many_materials.rs`) that
renders a grid of cubes with animated materials.
- The size of the grid can be configured using the `-n` command-line
argument (or `--grid-size`). The default grid size is 10x10.
- The materials animate by cycling through colors in the HSL color
space.

## Testing

- I have tested these changes locally on my Linux machine.
- Reviewers can test the changes by running the example with different
grid sizes and observing the performance (FPS, frame time).
- I have not tested on other platforms (macOS, Windows, wasm), but I
expect it to work as the code uses standard Bevy features.

---

## Showcase

<details>
  <summary>Click to view showcase</summary>


![image](https://github.com/user-attachments/assets/b15209d4-f832-402b-a527-58e5048971d1)

</details>
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-Benchmarks Stress tests and benchmarks used to measure how fast things are D-Trivial Nice and easy! A great choice to get started with Bevy
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant