aboutsummaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
Diffstat (limited to 'render')
-rw-r--r--render/gles2/renderer.c4
-rw-r--r--render/gles2/shaders.c7
-rw-r--r--render/gles2/texture.c3
-rw-r--r--render/vulkan/renderer.c14
-rw-r--r--render/vulkan/texture.c13
5 files changed, 1 insertions, 40 deletions
diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
index 01efaf1d..527d85bf 100644
--- a/render/gles2/renderer.c
+++ b/render/gles2/renderer.c
@@ -309,7 +309,6 @@ static bool gles2_render_subtexture_with_matrix(
glUseProgram(shader->program);
glUniformMatrix3fv(shader->proj, 1, GL_FALSE, gl_matrix);
- glUniform1i(shader->invert_y, texture->inverted_y);
glUniform1i(shader->tex, 0);
glUniform1f(shader->alpha, alpha);
@@ -810,7 +809,6 @@ struct wlr_renderer *wlr_gles2_renderer_create(struct wlr_egl *egl) {
goto error;
}
renderer->shaders.tex_rgba.proj = glGetUniformLocation(prog, "proj");
- renderer->shaders.tex_rgba.invert_y = glGetUniformLocation(prog, "invert_y");
renderer->shaders.tex_rgba.tex = glGetUniformLocation(prog, "tex");
renderer->shaders.tex_rgba.alpha = glGetUniformLocation(prog, "alpha");
renderer->shaders.tex_rgba.pos_attrib = glGetAttribLocation(prog, "pos");
@@ -822,7 +820,6 @@ struct wlr_renderer *wlr_gles2_renderer_create(struct wlr_egl *egl) {
goto error;
}
renderer->shaders.tex_rgbx.proj = glGetUniformLocation(prog, "proj");
- renderer->shaders.tex_rgbx.invert_y = glGetUniformLocation(prog, "invert_y");
renderer->shaders.tex_rgbx.tex = glGetUniformLocation(prog, "tex");
renderer->shaders.tex_rgbx.alpha = glGetUniformLocation(prog, "alpha");
renderer->shaders.tex_rgbx.pos_attrib = glGetAttribLocation(prog, "pos");
@@ -835,7 +832,6 @@ struct wlr_renderer *wlr_gles2_renderer_create(struct wlr_egl *egl) {
goto error;
}
renderer->shaders.tex_ext.proj = glGetUniformLocation(prog, "proj");
- renderer->shaders.tex_ext.invert_y = glGetUniformLocation(prog, "invert_y");
renderer->shaders.tex_ext.tex = glGetUniformLocation(prog, "tex");
renderer->shaders.tex_ext.alpha = glGetUniformLocation(prog, "alpha");
renderer->shaders.tex_ext.pos_attrib = glGetAttribLocation(prog, "pos");
diff --git a/render/gles2/shaders.c b/render/gles2/shaders.c
index d854b270..7898059e 100644
--- a/render/gles2/shaders.c
+++ b/render/gles2/shaders.c
@@ -28,18 +28,13 @@ const GLchar quad_fragment_src[] =
// Textured quads
const GLchar tex_vertex_src[] =
"uniform mat3 proj;\n"
-"uniform bool invert_y;\n"
"attribute vec2 pos;\n"
"attribute vec2 texcoord;\n"
"varying vec2 v_texcoord;\n"
"\n"
"void main() {\n"
" gl_Position = vec4(proj * vec3(pos, 1.0), 1.0);\n"
-" if (invert_y) {\n"
-" v_texcoord = vec2(texcoord.x, 1.0 - texcoord.y);\n"
-" } else {\n"
-" v_texcoord = texcoord;\n"
-" }\n"
+" v_texcoord = texcoord;\n"
"}\n";
const GLchar tex_fragment_src_rgba[] =
diff --git a/render/gles2/texture.c b/render/gles2/texture.c
index 293b7a19..8d6f3fc2 100644
--- a/render/gles2/texture.c
+++ b/render/gles2/texture.c
@@ -250,8 +250,6 @@ static struct wlr_texture *gles2_texture_from_dmabuf(
return NULL;
}
texture->drm_format = DRM_FORMAT_INVALID; // texture can't be written anyways
- texture->inverted_y =
- (attribs->flags & WLR_DMABUF_ATTRIBUTES_FLAGS_Y_INVERT) != 0;
const struct wlr_pixel_format_info *drm_fmt =
drm_get_pixel_format_info(attribs->format);
@@ -363,6 +361,5 @@ void wlr_gles2_texture_get_attribs(struct wlr_texture *wlr_texture,
memset(attribs, 0, sizeof(*attribs));
attribs->target = texture->target;
attribs->tex = texture->tex;
- attribs->inverted_y = texture->inverted_y;
attribs->has_alpha = texture->has_alpha;
}
diff --git a/render/vulkan/renderer.c b/render/vulkan/renderer.c
index 31ce0b76..a1d8d41e 100644
--- a/render/vulkan/renderer.c
+++ b/render/vulkan/renderer.c
@@ -433,15 +433,6 @@ static struct wlr_vk_render_buffer *create_render_buffer(
wlr_log(WLR_DEBUG, "vulkan create_render_buffer: %.4s, %dx%d",
(const char*) &dmabuf.format, dmabuf.width, dmabuf.height);
- // NOTE: we could at least support WLR_DMABUF_ATTRIBUTES_FLAGS_Y_INVERT
- // if it is needed by anyone. Can be implemented using negative viewport
- // height or flipping matrix.
- if (dmabuf.flags != 0) {
- wlr_log(WLR_ERROR, "dmabuf flags %x not supported/implemented on vulkan",
- dmabuf.flags);
- goto error_buffer;
- }
-
buffer->image = vulkan_import_dmabuf(renderer, &dmabuf,
buffer->memories, &buffer->mem_count, true);
if (!buffer->image) {
@@ -789,11 +780,6 @@ static bool vulkan_render_subtexture_with_matrix(struct wlr_renderer *wlr_render
vert_pcr_data.uv_size[0] = box->width / wlr_texture->width;
vert_pcr_data.uv_size[1] = box->height / wlr_texture->height;
- if (texture->invert_y) {
- vert_pcr_data.uv_off[1] += vert_pcr_data.uv_size[1];
- vert_pcr_data.uv_size[1] = -vert_pcr_data.uv_size[1];
- }
-
vkCmdPushConstants(cb, renderer->pipe_layout,
VK_SHADER_STAGE_VERTEX_BIT, 0, sizeof(vert_pcr_data), &vert_pcr_data);
vkCmdPushConstants(cb, renderer->pipe_layout,
diff --git a/render/vulkan/texture.c b/render/vulkan/texture.c
index f6fbec5a..76c37011 100644
--- a/render/vulkan/texture.c
+++ b/render/vulkan/texture.c
@@ -605,19 +605,6 @@ static struct wlr_texture *vulkan_texture_from_dmabuf(struct wlr_renderer *wlr_r
goto error;
}
- uint32_t flags = attribs->flags;
- if (flags & WLR_DMABUF_ATTRIBUTES_FLAGS_Y_INVERT) {
- texture->invert_y = true;
- flags &= ~WLR_DMABUF_ATTRIBUTES_FLAGS_Y_INVERT;
- }
-
- if (flags != 0) {
- wlr_log(WLR_ERROR, "dmabuf flags %x not supported/implemented on vulkan",
- attribs->flags);
- // NOTE: should probably make this a critical error in future
- // return VK_NULL_HANDLE;
- }
-
const struct wlr_pixel_format_info *format_info = drm_get_pixel_format_info(attribs->format);
assert(format_info);