-
-
Notifications
You must be signed in to change notification settings - Fork 843
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
wgpu: Some optimisations, some refactors, much less buffers #14919
Conversation
pony-creator-v3-generalzoi.zip
|
@SN902 web or desktop? Do they look normal to you before this PR, no rendering artifacts or crashes? |
I tested your PR on the desktop build, these games works fine on the latest nightly 2024-01-24 |
Try now. I think I misunderstood the max_uniform_buffer_binding_size limit. |
Fixed, now works perfectly. |
…ms, no longer dynamically allocated
…nd it should be same perf now
…Builder when making meshes
fda8cf2
to
efb6ef9
Compare
This reduces the amount of buffers needed to run Heartcore from about 8k to 3k peak, which should improve performance and reduce memory usage. We also don't need a second command buffer per draw anymore. Filters, especially, should be cheaper to do now.
It also simplifies the codebase a lot since we no longer have to juggle lifetimes with our old staging belt system, and we also don't specialcase push constants since the performance should be comparable now. This opens up future improvements, especially to BMD draws (and making BMD operations on gpu viable, to avoid readbacks)