mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-04-13 08:22:16 -04:00
render/vulkan: Use instanced draws instead of scissors
Similar to what we have already done for gles2. To simplify things we use the staging ring buffer for the vertex buffers by extending the usage bits, rather than introducing a separate pool.
This commit is contained in:
parent
3c9f1e35b1
commit
b16dd0178b
3 changed files with 156 additions and 36 deletions
|
|
@ -8,11 +8,14 @@ layout(push_constant, row_major) uniform UBO {
|
|||
vec2 uv_size;
|
||||
} data;
|
||||
|
||||
layout(location = 0) in vec4 inst_rect;
|
||||
|
||||
layout(location = 0) out vec2 uv;
|
||||
|
||||
void main() {
|
||||
vec2 pos = vec2(float((gl_VertexIndex + 1) & 2) * 0.5f,
|
||||
float(gl_VertexIndex & 2) * 0.5f);
|
||||
pos = inst_rect.xy + pos * inst_rect.zw;
|
||||
uv = data.uv_offset + pos * data.uv_size;
|
||||
gl_Position = data.proj * vec4(pos, 0.0, 1.0);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue