aboutsummaryrefslogtreecommitdiff
path: root/render
AgeCommit message (Collapse)Author
2018-03-31render/egl: add wlr_egl_create_image_from_wl_drmemersion
This allows external renderers and potential future GL-based renderers to re-use this function.
2018-03-31Untie wlr_backend from wlr_rendereremersion
2018-03-31Downgrade gles2 messages to L_DEBUGDrew DeVault
L_INFO is for stuff that's useful to the user
2018-03-31Fix build error with -O2Orestis Floros
../render/gles2/renderer.c: In function ‘gles2_render_texture_with_matrix’: ../render/gles2/renderer.c:140:2: error: ‘target’ may be used uninitialized in this function [-Werror=maybe-uninitialized] glBindTexture(target, tex_id); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../render/gles2/renderer.c:145:2: error: ‘prog’ may be used uninitialized in this function [-Werror=maybe-uninitialized] glUseProgram(prog);
2018-03-28Merge pull request #744 from emersion/texture-redesignTony Crisci
Redesign wlr_texture
2018-03-27Fix issue starting up client EGL on X11 backendDrew DeVault
2018-03-27Implement layer surface damageDrew DeVault
2018-03-27Arrange & render layer surfacesDrew DeVault
2018-03-27render: remove GL calls from wlr_eglemersion
2018-03-26Merge branch 'master' into texture-redesignemersion
2018-03-26render: add simple functions to render rectangles and ellipsesemersion
2018-03-24Redesign wlr_textureemersion
- Textures are now immutable (apart from those created from raw pixels), no more invalid textures - Move all wl_drm stuff in wlr_renderer - Most of wlr_texture fields are now private - Remove some duplicated DMA-BUF code in the DRM backend - Add more assertions - Stride is now always given as bytes rather than pixels - Drop wl_shm functions Fun fact: this patch has been written 10,000 meters up in the air.
2018-03-23linux-dmabuf: Support multi plane formats like NV12Guido Günther
2018-03-23Merge branch 'master' into gles2-renderer-redesignemersion
2018-03-21render/egl: use EGL_KHR_debugemersion
2018-03-21render/gles2: use gles2_pixel_format::has_alpha for shader selectionemersion
2018-03-21render/gles2: move list of supported WL formats to pixel_format.cemersion
2018-03-21render/gles2: make wlr_renderer_begin take viewport sizeemersion
This allows raw GL calls outside wlr_renderer to be removed.
2018-03-20render/gles2: remove global state, use OpenGL debug extensionemersion
2018-03-20gles2: Honor alpha in fragment_src_externalGuido Günther
By using the same vertex shader and adding alpha to the fragment shader for external textures we can: - use alpha blending - have wlr_gles2_render_texture_with_matrix work with the GL_TEXTURE_EXTERNAL_OES. So far this failed since we passed in alpha which was unknown by fragment_src_external
2018-03-20gles2_texture_bind: use texture's target typeGuido Günther
Hardcoding GL_TEXTURE_2D leads to rendering errors when using GL_TEXTURE_EXTERNAL_OES textures.
2018-03-20gles2: allow to specify texture target typeGuido Günther
Allow to set the texture target type when generating/binding the texture. This allows us to attach the texture type to the texture so we don't have to keep the logic elsewhere.
2018-03-19render: split render.h into wlr_renderer.h and wlr_texture.hemersion
2018-03-19render/gles2: transpose matrices before binding thememersion
Setting glUniformMatrix3fv's transpose parameter to GL_TRUE is not allowed for OpenGL ES 2. This adds a wlr_matrix_transpose function.
2018-03-17Merge pull request #722 from emersion/matrix-redesignDrew DeVault
Matrix redesign
2018-03-16egl: print supported dmabuf formatsGuido Günther
Useful for debugging dmabuf related problems e.g. when a client requests a certain and we fail to support it.
2018-03-15render/gles2: remove matrix transposition in shadersemersion
2018-03-15renderer: replace wlr_texture_get_matrix by wlr_render_textureemersion
2018-03-15render/gles2: don't set inverted_y when EGL_WAYLAND_Y_INVERTED_WL is unsupportedemersion
2018-03-15Merge branch 'master' into matrix-redesignemersion
2018-03-15matrix: use 2D matricesemersion
2018-03-15Indent GLSL by two spacesGuido Günther
since this is the most established indentation
2018-03-15Add initial linux_dmabuf protocol supportGuido Günther
Tested with ./weston-simple-dmabuf-drm ./weston-simple-dmabuf-drm --import-immediate=1 ./weston-simple-dmabuf-drm --y-inverted=1 (and combinations) Supports only single plane XRGB dmabufs for now.
2018-03-15matrix: unify API, don't use array pointersemersion
2018-03-15matrix: move to types/emersion
2018-03-11render: Flip textures in case of inverted_yGuido Günther
2018-02-28Merge pull request #691 from agx/egl_ext_matchemersion
Avoid false positives on egl extension matching
2018-02-28Avoid false positives on egl extension matchingGuido Günther
Due to the strstr prefix match EGL_EXT_foo would be incorrectly matched if EGL_EXT_foobar would be available but not foo. This doesn't matter for the currently checked extensions but will matter for EGL_EXT_image_dma_buf_import_modifiers vs EGL_EXT_image_dma_buf_import Code borrowed from weston
2018-02-28textures: tell us which texture format is unsupportedGuido Günther
2018-02-28wlr_egl_create_image: return NULL when function is missingGuido Günther
This matches the return value of elgCreateImage in case of error.
2018-02-25Add alpha to wlr_render_with_matrixGuido Günther
so we can use the alpha channel to e.g. blend in textures
2018-02-19Revert "ELF Visibility"Drew DeVault
2018-02-19Explicitly export EFL symbolsScott Anderson
2018-02-15Log GL and EGL vendorGuido Günther
useful for debugging
2018-02-14Add missing dependenciesRodrigo Lourenço
2018-02-12Reformat all #include directivesemersion
2018-02-12Make wlr_signal_emit_safe privateemersion
2018-02-12Add wlr_signal_emit_safeemersion
2018-02-09Swap buffers with damageemersion
2018-02-03render: make wlr_renderer_clear take a float[4] for the coloremersion