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

Use same syntax for updating uniform inputs and uniform buffer inputs #1683

Open
3 tasks
heinezen opened this issue Aug 25, 2024 · 0 comments
Open
3 tasks
Labels
area: renderer Concerns our graphics renderer code quality Does not alter behavior, but beauty of our code good first issue Suitable for newcomers improvement Enhancement of an existing component just do it You can start working on this, there should be nothing left to discuss lang: c++ Done in C++ code opengl

Comments

@heinezen
Copy link
Member

heinezen commented Aug 25, 2024

Required Skills: C++, maybe OpenGL

Difficulty: Easy

In #1664 we switched the structure of OpenGL uniform inputs (GlUniformInput) to more performance friendly code. Uniform buffer inputs (GlUniformBufferInput) were not changed in the PR as the performance gain would have been only marginal. However, it would make sense for code quality purposes to keep the update syntax of both input types roughly the same, so that they can be maintained in the same way.

The tasks mostly consist of porting the changes from #1664 to the flow used for updating the uniform buffers. A simple example for uniform buffers that can be used for testing purposes is available in renderer demo 5 which you can access by running this command:

./run test -d renderer.tests.renderer_demo 5

Tasks:

  • Port the changes to GlUniformInput made in Vectorize uniform inputs #1664 to the GlUniformBuffer class
  • Change the update workflow of uniform buffers, so that it aligns with the update workflow of regular uniform inputs
  • (optional) Test the performance of the new solution using callgrind:
valgrind --tool=callgrind ./run test -d renderer.tests.renderer_demo 5

Further Reading

@heinezen heinezen added improvement Enhancement of an existing component area: renderer Concerns our graphics renderer lang: c++ Done in C++ code code quality Does not alter behavior, but beauty of our code good first issue Suitable for newcomers just do it You can start working on this, there should be nothing left to discuss opengl labels Aug 25, 2024
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 code quality Does not alter behavior, but beauty of our code good first issue Suitable for newcomers improvement Enhancement of an existing component just do it You can start working on this, there should be nothing left to discuss lang: c++ Done in C++ code opengl
Projects
Status: renderer
Status: 📋 Backlog
Development

No branches or pull requests

1 participant