Simon Ser
40633ae7fd
render: drop legacy render pass
...
All built-in renderers now implement the new API.
1 year ago
Alexander Orzechowski
98a745d926
render/pass: Remove empty box early return
1 year ago
Alexander Orzechowski
5299d973d5
render/pass: Introduce wlr_render_rect_options_get_box
1 year ago
Simon Ser
7bf6c1fc6c
render/pass: ensure rect has positive size
...
Ported from wlr_render_rect().
1 year ago
Manuel Stoeckl
a94168b5fe
render: ensure wlr_render_rect_options->box is nonempty
...
This optimization also fixes an validation error with the Vulkan
renderer by ensuring vkCmdClearAttachments does not receive empty
regions.
1 year ago
Alexander Orzechowski
664ec59095
renderer: Sanity check texture source bounds
1 year ago
Simon Ser
7a9f8d8d6b
Use struct initializers instead of memset()
...
This is a bit more type-safe.
2 years ago
Alexander Orzechowski
2044cc2311
render: Introduce wlr_render_texture_options.blend_mode
2 years ago
Simon Ser
a93fc8afd6
render: introduce blend mode
...
Allow callers to pick the blend mode when rendering a rect. The
"none" mode can be used to disable blending and clear rects.
2 years ago
Simon Ser
471249ae4f
render/pass: add legacy render pass implementation
...
Add a render pass implementation which leverages the legacy
rendering API. This is helpful during the migration.
2 years ago
Simon Ser
4a1ad32534
render: add render pass helpers
2 years ago
Simon Ser
756dedae20
Add a new renderer API
...
Goals:
- Extensibility: we need to be able to add new params to the calls
to render a texture/rect. For instance we'll need to add fences to
the render texture operation for explicit sync purposes.
- No implicit state: no more bind_buffer, begin, end.
- No matrices: these hurt Pixman and we don't need them.
- Clip regions for optimized damage repainting.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3188
2 years ago