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

Render pipeline optimization #1506

Open
1 of 7 tasks
heinezen opened this issue Apr 14, 2023 · 0 comments
Open
1 of 7 tasks

Render pipeline optimization #1506

heinezen opened this issue Apr 14, 2023 · 0 comments
Labels
area: renderer Concerns our graphics renderer improvement Enhancement of an existing component just do it You can start working on this, there should be nothing left to discuss overview Overview of a collection of tasks

Comments

@heinezen
Copy link
Member

heinezen commented Apr 14, 2023

Ideally, the renderer must be able to handle several thousands of objects without significant performance loss. While we're not processing super complex geometry like other engines, it's good to keep performance in mind, so that system requirements stay low. There are a few general techniques that we can use:

Pre-rendering Optimizations

Rendering optimizations

  • Geometry shader for sprites: Draw sprites by passing a single vertex using GL_POINT and calculate the the 4 sprite corners in the geometry shader. This offloads some of the sprite scaling/positioning to the GPU.
@heinezen heinezen added improvement Enhancement of an existing component area: renderer Concerns our graphics renderer just do it You can start working on this, there should be nothing left to discuss labels Apr 14, 2023
@heinezen heinezen added the overview Overview of a collection of tasks label Sep 16, 2023
@heinezen heinezen mentioned this issue Sep 16, 2023
17 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: renderer Concerns our graphics renderer improvement Enhancement of an existing component just do it You can start working on this, there should be nothing left to discuss overview Overview of a collection of tasks
Projects
Status: 🔖 TODO
Development

No branches or pull requests

1 participant