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

improve renderer performance #3

Open
1 of 6 tasks
Grokmoo opened this issue Sep 1, 2020 · 0 comments
Open
1 of 6 tasks

improve renderer performance #3

Grokmoo opened this issue Sep 1, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@Grokmoo
Copy link
Owner

Grokmoo commented Sep 1, 2020

  • glium renderer currently builds the vertex list in a geometry shader which is probably not optimal.
  • wgpu_renderer currently sends a ton of duplicate data to the gpu
  • for both renderers, we should be able to build just one vertex / index buffer per frame, then use sub-slices for individual draw calls.
  • It might be possible to use multi-draw indirect to issue all draw commands simultaneously.

Longer term ideas:

  • if we can unify renderers to use exactly the same raw vertex data, we can probably separate out the vertex data and build it as we go, essentially merging the widget build and render into a single pass. then, we would just need to build the buffers and execute draw calls.
  • clip (and for that matter, all vertex) data sent to the GPU could be compressed from f32 into i16 probably.
@Grokmoo Grokmoo added the enhancement New feature or request label Sep 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant