Commit Graph

518 Commits (37996493333134692333c640ede7f9feb85052bd)

Author SHA1 Message Date
Simon Ser 1245730ea2 render/gles2: fix y-inverted output when rendering to buffer 4 years ago
Simon Ser 6136fe87d1 render/gles2: implement wlr_renderer_bind_buffer 4 years ago
Simon Ser c88c54fb38 render: introduce wlr_renderer_bind_buffer 4 years ago
Simon Ser b0a663d39d render: introduce wlr_swapchain 4 years ago
Simon Ser 7c6212a0f7 render/drm_format_set: introduce wlr_drm_format_dup 4 years ago
Simon Ser 5913040110 render: introduce wlr_gbm_allocator 4 years ago
Simon Ser f47445f142 render: introduce wlr_allocator 4 years ago
Isaac Freund 0724b3c453 Use uint32_t in wlr_renderer_begin signature 4 years ago
Guido Cella 6949d0fd38 render: Don't crash on 0 dimensions 4 years ago
Simon Ser 1dbcfdaf81 render/gles2: remove gles2_procs 5 years ago
Simon Ser 62da61716f render/gles2: make push/pop debug functions take a wlr_renderer 5 years ago
Simon Ser e8872d9ed7 render/gles2: keep ref to wlr_gles2_renderer in wlr_gles2_texture 5 years ago
Simon Ser 26af316b3b render/gles2: make wlr_gles2_texture_from_* private 5 years ago
Andri Yngvason 6ef5d18757 render: egl: Use current display to restore NULL context 5 years ago
Andri Yngvason e05a85327f render: gles2: Fix y-inversion in gles2_blit_dmabuf() 5 years ago
Simon Zeni 4a4da256dd render/gles2: use glGetAttribLocation instead of hardcoded indices 5 years ago
Simon Ser 58df3eda9f render/egl: print error name 5 years ago
Simon Ser 315bf08733 render: add wlr_render_subtexture_with_matrix 5 years ago
Simon Ser 5118189a2b render/gles2: use .x/.y instead of .s/.t 5 years ago
Rouven Czerwinski d3d1bac1c2 render: assert sane values for box functions 5 years ago
Simon Ser 7f9bbaaa17 render/egl: explicit client extension handling 5 years ago
Andri Yngvason 78d6eed6b3 render: Fix blit_dmabuf() breakage due to API change 5 years ago
Andri Yngvason b64a8a7f98 render: Add wlr_renderer_blit_dmabuf() 5 years ago
Andri Yngvason 11b598fe33 render: egl: Add utility functions for saving/restoring context 5 years ago
Simon Ser a3ba82885c render: choose DMA-BUF texture target via eglQueryDmaBufModifiersEXT 5 years ago
Simon Ser e91417ea8d render: stop making EGL context current in wlr_egl_init 5 years ago
Simon Ser af2f69e6c1 render/egl: unset current context after swapping buffers 5 years ago
Simon Ser 1edc42157b render/egl: introduce wlr_egl_unset_current 5 years ago
Simon Ser 05803511db render/texture: make write_pixels optional 5 years ago
Simon Ser 06f4c3945d render/texture: add width and height fields 5 years ago
Simon Ser 5dc3a9c754 render/gles2: add wlr_gles2_renderer_check_ext 5 years ago
Simon Ser 01d4506253 render/drm_format_set: disallow DRM_FORMAT_INVALID 5 years ago
Simon Ser d10f8a98ec render: only expose linux-dmabuf if EGL extension is supported 5 years ago
Simon Ser 4a1015faff render/gles2: only call wlr_egl_bind_display if supported 5 years ago
Simon Ser 6787ff521b render/egl: make config attribs const 5 years ago
Isaac Freund c682d97841 Return failure of wlr_renderer_init_wl_display() 5 years ago
Simon Ser a71649dde9 render/gles2: remove duplicated format list 5 years ago
Simon Ser 6d3f3b9300 render/gles2: unbind textures after use 5 years ago
Simon Ser 2b04857343 render/egl: remove SURFACELESS_MESA special case 5 years ago
Simon Ser 346b43e937 render: guard rendering operations between begin() and end() 5 years ago
Scott Anderson cff1c2f740 meson: Various improvements 5 years ago
Simon Ser 01818ad2c8 render: fix EGL extensions not loaded 5 years ago
Simon Ser 515679e4fe Refactor EGL/GL API loading 5 years ago
Ronan Pigott 5df606d8ab render/gles2: do not set GL_TEXTURE_MAG_FILTER 5 years ago
Simon Ser bcd5f7d259 render: remove return in wlr_texture_get_size 5 years ago
Simon Ser 16e5e9541b Add -Wmissing-prototypes 5 years ago
Drew DeVault 4c9423278a Introduce wlr_renderer_get_egl 5 years ago
Simon Ser 447835afc1 render/gles2: provide public API to access GL texture 5 years ago
Scott Anderson 85a2ee6d30 render/gles: Simplify textures a bit 5 years ago
Simon Ser 51416738ea render/egl: prevent use-after-free when destroying current surface 5 years ago
Simon Ser 6bb7639a0f render/gles2: don't unset the current EGL surface when destroying texture 5 years ago
Simon Ser 11bf87d678 render/egl: support formats with zero modifiers 5 years ago
Scott Anderson 06644575da render/egl: Change KHR_debug log to include error code 5 years ago
Filip Sandborg 734c64a6cc render/gles2: fix calculation for partial gles2 pixel read () 5 years ago
Drew DeVault 540e23d102 Revert "render/drm: keep old drm_format if realloc fails" 6 years ago
Antonin Décimo c1be9b6945 render/drm: keep old drm_format if realloc fails 6 years ago
Simon Ser 6dbdf5db34 render/dmabuf: add wlr_dmabuf_attributes_copy 6 years ago
Simon Ser e516ea4c79 backend/drm: check format when scanning out DMA-BUF 6 years ago
Simon Ser 107a1789ea render/gles2: print GL_RENDERER 6 years ago
Simon Ser d6e250b389 render/egl: fix swapping with no damage 6 years ago
Simon Ser f42816ce3f render/egl: fix zero-length VLA 6 years ago
Alyssa Ross 95b22619e0 Fix missing headers when building without X11 6 years ago
emersion e42178d03f
render: switch wlr_renderer to wlr_drm_format_set 6 years ago
Scott Anderson c01b81c99c
render: introduce wlr_drm_format_set 6 years ago
emersion 5445d8aad0 meson: enable more compiler warnings 6 years ago
emersion 75371d2c88
Require libdrm >= 2.4.95 6 years ago
Timidger 9af0c5338f
Standardize the wlr_box input paramaters 6 years ago
Ilia Bozhinov fb5691b6cc output: add wlr_output_preferred_read_format() 6 years ago
emersion 1b9ebcf645
output: make wlr_egl flip the damage 6 years ago
emersion 09550032b7
render: correctly set EGL_RENDERABLE_TYPE 6 years ago
emersion d592dcdedd
render/gles2: check for GL_OES_EGL_image_external 6 years ago
emersion 62d646f2b8
render/gles2: remove assumptions about supported formats 6 years ago
emersion b42fc4f2b1
render: on Wayland, make eglSwapBuffers non-blocking 6 years ago
nyorain cb03a41a3b Use enum wl_shm_format for gles2 texture formats 6 years ago
nyorain cd28637187 Remove fmt parameter from wlr_texture_write_pixels 6 years ago
Cole Mickens 7297348736 render: fix meson including libdrm 6 years ago
Scott Anderson 7ca3bc1d6f Fix libdrm includes 6 years ago
emersion 7daca85bcf
Merge pull request from swaywm/fix-headless-libinput 6 years ago
Cole Mickens 43d0ebfdac
Fix include path for (libdrm/)drm_fourcc.h 6 years ago
Drew DeVault 63c69cee6e Fix headless backend 6 years ago
nyorain affbfb6a28 Support older wlr_linux_dmabuf_v1 clients 6 years ago
emersion 2f0815838d Init dmabuf global in renderer 6 years ago
Scott Anderson dc37194291 Change how glgen.sh outputs files 7 years ago
Scott Anderson fd3fa760d3 Revert "Revert "Merge pull request from ascent12/meson_feature"" 7 years ago
Drew DeVault 9c886f20b9 Revert "Merge pull request from ascent12/meson_feature" 7 years ago
Scott Anderson a2bbf2c1f7 Make style more consistent 7 years ago
Mariusz Bialonczyk ad406db21c gles2: change context when it is not current 7 years ago
Drew DeVault b902c2bd7c Revert "Move side-effect out of assert statement" 7 years ago
Drew DeVault a0afedcd8f Move side-effect out of assert statement 7 years ago
emersion c4915d1492 render: add wlr_texture_is_opaque 7 years ago
emersion 7cbef15206
util: add wlr_ prefix to log symbols 7 years ago
emersion cc9b198f9e
render/gles2: ditch extra parens 7 years ago
emersion bf7560b7cd
screencopy: add capture_output_region support 7 years ago
emersion 2b9cbaddf3
screencopy: add support for frame flags 7 years ago
Dominique Martinet 4cc4412481 wlr_renderer_destroy: fix renderer NULL check 7 years ago
emersion 57548b557a
Merge branch 'master' into screencontent 7 years ago
emersion d643361c48
Merge pull request from NotKit/gles2fix 7 years ago
NeKit 6f29db1044 gles2 renderer: introduce struct wlr_gles2_tex_shader 7 years ago
Vincent Vanlaer f1a62a3200 Rename egl.exts to match the extension names 7 years ago
Vincent Vanlaer 5ec6d8230d Split eglSwapBuffersWithDamage feature detection 7 years ago
Brian Ashworth 18bbe2d897 Fix atti assert in wlr_egl_init 7 years ago
emersion 457bfcab19
render/egl: only request high priority context on DRM 7 years ago
emersion d425edc96c
render/egl: consistent extension checking 7 years ago
emersion cbfe0e834a
Request a high priority EGL context 7 years ago
NeKit de91c55ea9 Fix GLES2 renderer to use glGetUniformLocations locations 7 years ago
emersion 6b7a55aa3d
Merge pull request from emersion/remove-check-dmabuf 7 years ago
emersion 21928cbe61
Merge branch 'master' into screencontent 7 years ago
Genki Sky d1cf9acbd5 cleanup: Use void for zero-parameter functions 7 years ago
emersion 135721118a
render: remove wlr_renderer_check_import_dmabuf 7 years ago
emersion 28020ff577
Only allow one modifier per DMA-BUF, split attributes struct in render/ 7 years ago
emersion 5ba1a9af56
render: add wlr_texture_to_dmabuf 7 years ago
emersion 6eb4b5b54d
Merge pull request from emersion/bind-wl-drm-in-renderer 7 years ago
Ilia Bozhinov 24cf70ae96 backends: implement custom EGL and renderer initialization 7 years ago
agr 4e89e0fc6c fix server exit: eglMakeCurrent Invalid display 7 years ago
emersion 41130fe54b
render: bind wl_drm in renderer 7 years ago
Ilia Bozhinov 47ffd0e184 gles2: pre-multiply alpha and fix blending function 7 years ago
Brian Ashworth 35e83800d4 Fix alpha for src_rgba and src_rgbx 7 years ago
Alain Greppin b2f8f00ae3 fix check of EGL_WL_bind_wayland_display presence 7 years ago
emersion 5a87712ca8
Log required extension name if unavailable 7 years ago
Drew DeVault fecb971518
Merge pull request from emersion/various-memory-leaks 7 years ago
emersion 449f06556a
Destroy wlr_surface with wlr_renderer 7 years ago
emersion 71ca45e2c0
Make sure we don't use others' prefixes 7 years ago
emersion 018b82c01e
render/egl: allow passing NULL to surface and image destructors 7 years ago
emersion eaed6bd03b
render/egl: add wlr_egl_destroy_surface 7 years ago
Rostislav Pehlivanov 12298ce88c Do not advertize *RGB8888 as supported shm formats 7 years ago
Drew DeVault b116414bd5
Merge pull request from emersion/advertize-renderer-formats 7 years ago
emersion 1588094b99
Remove a few local prefixed symbols 7 years ago
emersion 70d820be25
Add wlr_renderer_init_wl_shm to advertize supported renderer formats 7 years ago
emersion 1b802d9251
Make wlr_renderer_scissor take normal coords instead of upside-down ones 7 years ago
emersion d2ebbd103c
backend: remove wlr_backend_get_egl 7 years ago
Guido Günther 6a05bd3886 egl: silence dmabuf error when extension is not present 7 years ago
emersion f3f61bed3e
Untie wlr_gles2_renderer and wlr_gles2_texture 7 years ago
emersion a7bb48b404
render/egl: add wlr_egl_create_image_from_wl_drm 7 years ago
emersion 33a2eb4b77
Untie wlr_backend from wlr_renderer 7 years ago
Drew DeVault 23d357e371 Downgrade gles2 messages to L_DEBUG 7 years ago
Orestis Floros c9ed6fed59
Fix build error with -O2 7 years ago
Tony Crisci 330ee08126
Merge pull request from emersion/texture-redesign 7 years ago
Drew DeVault 13edb19a6c Fix issue starting up client EGL on X11 backend 7 years ago
Drew DeVault f444a0d14c Implement layer surface damage 7 years ago
Drew DeVault 4bf936360d Arrange & render layer surfaces 7 years ago
emersion c42fd1018b
render: remove GL calls from wlr_egl 7 years ago
emersion adf4fb08dd
Merge branch 'master' into texture-redesign 7 years ago
emersion 793c3b3047
render: add simple functions to render rectangles and ellipses 7 years ago
emersion c63d94483b
Redesign wlr_texture 7 years ago
Guido Günther b1852096c5 linux-dmabuf: Support multi plane formats like NV12 7 years ago
emersion a854c2f246
Merge branch 'master' into gles2-renderer-redesign 7 years ago
emersion b1f93bc5cc
render/egl: use EGL_KHR_debug 7 years ago
emersion 8207f0f081
render/gles2: use gles2_pixel_format::has_alpha for shader selection 7 years ago
emersion cc5ef1d2ff
render/gles2: move list of supported WL formats to pixel_format.c 7 years ago
emersion 3581573bdc
render/gles2: make wlr_renderer_begin take viewport size 7 years ago
emersion 95e86e675a
render/gles2: remove global state, use OpenGL debug extension 7 years ago
Guido Günther 2d01663b25 gles2: Honor alpha in fragment_src_external 7 years ago
Guido Günther 13e4ba4867 gles2_texture_bind: use texture's target type 7 years ago
Guido Günther b3cb5a36c7 gles2: allow to specify texture target type 7 years ago
emersion c41de2d1be
render: split render.h into wlr_renderer.h and wlr_texture.h 7 years ago
emersion 6ecb0eefcb
render/gles2: transpose matrices before binding them 7 years ago
Drew DeVault 1956d3cedb
Merge pull request from emersion/matrix-redesign 7 years ago
Guido Günther 7fd7dff26f egl: print supported dmabuf formats 7 years ago
emersion f1cbbac636
render/gles2: remove matrix transposition in shaders 7 years ago
emersion 876f07e9f1
renderer: replace wlr_texture_get_matrix by wlr_render_texture 7 years ago
emersion 0e253e0615
render/gles2: don't set inverted_y when EGL_WAYLAND_Y_INVERTED_WL is unsupported 7 years ago
emersion 8b58e1a3ad
Merge branch 'master' into matrix-redesign 7 years ago
emersion 824a95ad19
matrix: use 2D matrices 7 years ago
Guido Günther 653bc282a7 Indent GLSL by two spaces 7 years ago
Guido Günther 14cdb6153f Add initial linux_dmabuf protocol support 7 years ago
emersion d26b67cb06
matrix: unify API, don't use array pointers 7 years ago
emersion b6a3f240c7
matrix: move to types/ 7 years ago
Guido Günther 2d0db16942 render: Flip textures in case of inverted_y 7 years ago
emersion d9571f27e6
Merge pull request from agx/egl_ext_match 7 years ago
Guido Günther d9f2e90df6 Avoid false positives on egl extension matching 7 years ago
Guido Günther 2dc8a35db2 textures: tell us which texture format is unsupported 7 years ago
Guido Günther d928ddc36c wlr_egl_create_image: return NULL when function is missing 7 years ago
Guido Günther d08792bfff Add alpha to wlr_render_with_matrix 7 years ago
Drew DeVault 1d9be89e2d
Revert "ELF Visibility" 7 years ago
Scott Anderson 86269052eb Explicitly export EFL symbols 7 years ago
Guido Günther 4d496802dd Log GL and EGL vendor 7 years ago
Rodrigo Lourenço 168e26489a Add missing dependencies 7 years ago
emersion c2e1474010
Reformat all #include directives 7 years ago
emersion 36ead80cd1
Make wlr_signal_emit_safe private 7 years ago
emersion 5e58d46cc1
Add wlr_signal_emit_safe 7 years ago
emersion bf6d245400
Swap buffers with damage 7 years ago
emersion ddb1779f9f
render: make wlr_renderer_clear take a float[4] for the color 7 years ago
emersion 51c22d39a4
Merge remote-tracking branch 'upstream/master' into output-damage 7 years ago
Tony Crisci ed5b1fdedd
Merge pull request from emersion/screenshooter-renderer-backport 7 years ago
emersion f34a1b75eb
render/gles2: use format bpp when reading pixels 7 years ago
emersion 6281deb90f
Merge remote-tracking branch 'upstream/master' into output-damage 7 years ago
emersion 4fa90b0511
Backport screenshooter fixes from the renderer redesign v1 7 years ago
emersion 415a2b7c56
render: add wlr_renderer_clear and wlr_renderer_scissor 7 years ago
Tony Crisci 85a6939cf2 rename matrix model box to project box 7 years ago
Tony Crisci d13114520a move matrix model code to matrix.h 7 years ago
emersion 0365b587f0
output: add damage tracking via buffer age 7 years ago
emersion a0f24b809e
output: add damage event 7 years ago
emersion bde255933e
output: add wlr_output::damage, fixes 7 years ago
emersion 5017d7f762
rootston: only draw damaged regions 7 years ago
Tony Crisci 3751a17321 decorate xwayland views 7 years ago
emersion b99d1f4fcc
Refactor wlr_egl_init to accept config_attribs 7 years ago
Drew DeVault 23fb663ea4
Merge pull request from emersion/surface-transform 7 years ago
emersion 18eb1eee3f
Listen to display destroy in xwayland, rename wlr_egl_free 7 years ago
emersion 4a56957a37
Fix inverted flipped-90 and flipped-270 7 years ago
emersion 6a69b4419f
Make wlr_output_transform_* functions public, refactoring 7 years ago
emersion f4754ad1a2
Fix surface transforms 7 years ago
Scott Anderson bc113c16aa Use correct include path for glapi.h 7 years ago
Scott Anderson 02374b945d Change glapi.sh to generate both files 7 years ago
Scott Anderson 37b8a096a9 Pass backend to render 7 years ago
Scott Anderson 9b984253e2 Move egl.h to render/egl.h 7 years ago
Drew DeVault 9e1ff2dce9 Merge pull request from emersion/screenshooter 7 years ago
Scott Anderson c0e5feea37 Add GL/EGL extension loader generator 7 years ago
emersion 0ce3135304
Move read_pixels from output to renderer 7 years ago
Versus Void c5df6ca900 Fix memory leaks 7 years ago
Scott Anderson 009c3747a8 Multi-GPU DRM 7 years ago
Scott Anderson 517ba0bc16 Change egl_get_config to always use visual id 7 years ago
Drew DeVault 220a6e9bf6 Add xwayland activate and fix EGL bug 7 years ago
Tony Crisci 00f1686ce5 unset egl current before terminating display 7 years ago
Drew DeVault 9fa822c666 Fix minor typos 7 years ago
Tony Crisci 368f74e4df Refactor meson build files 8 years ago
Dominique Martinet f24b3df980 wlr renderer/texture: rename init to create when it does alloc 8 years ago
Drew DeVault 27c13d621d Merge pull request from 4e554c4c/alloc_crashing 8 years ago
Tony Crisci 4f2b1cc930 implement get_buffer_size for egl buffers 8 years ago
Tony Crisci 72a33b736f implement texture get buffer size 8 years ago
Calvin Lee 5cc7342606 Prevent alloc errors from crashing 8 years ago
nyorain f998bb8299 Fix style issues 8 years ago
Dominique Martinet 4bbf718e7d impl->destroy cleanup: 8 years ago
Drew DeVault 2facf1df65 Fix software cursors 8 years ago
Drew DeVault de6f32c84e Refactor away wlr_renderer_state 8 years ago
Drew DeVault 94e6e6334b Refactor out wlr_texture_state 8 years ago
Drew DeVault d4b4bfb8bc Fix 8 years ago
nyorain f066ff6d02 Fix external shader 8 years ago
Drew DeVault 2d6d2bcef9 Merge pull request from nyorain/egl_image_leak 8 years ago
nyorain 862bc9783f Fix egl image leak in gles renderer 8 years ago
Dominique Martinet c323bfc6a0 GLES2: detach and delete shaders after LinkProgram 8 years ago
Drew DeVault 62d8b252c0 Refactor meson and move xdg-shell into wlroots 8 years ago
Drew DeVault a6efb90382 s/gen/ensure/ fixes 8 years ago
Drew DeVault c24351681f Refactor EGL handling 8 years ago
Drew DeVault 7095274a9e Merge branch 'master' into drm_buffer 8 years ago
Drew DeVault 3c12a32d1f Merge pull request from acrisci/feature/enable-gl-blending 8 years ago
Tony Crisci 49e97857c7 enable gl blending 8 years ago
Drew DeVault 888986b038 Remove excess logging 8 years ago
Drew DeVault 7da43ff8b0 Implement wlr_surface_flush_damage 8 years ago
nyorain 073dff63da Fix style issues 8 years ago
nyorain 67369173aa Implement drm (egl) buffer attaching 8 years ago
Drew DeVault e2b7712302 Use texture->pixel_format instead of re-scanning 8 years ago
Drew DeVault 4de930542f Implement partial texture uploads 8 years ago
Drew DeVault bd2e9a7168 Style cleanup 8 years ago
nyorain e167f41fde Rename wlr_surface -> wlr_texture; attach -> upload 8 years ago
Scott Anderson 1db97a9af9 Updated DRM cursor rendering 8 years ago
Drew DeVault 41b98f21e5 Merge pull request from acrisci/bug/no-switch-active-textures 8 years ago
nyorain fdab81e1c9 Use meson build system 8 years ago
Tony Crisci 9119be1dd1 Remove unnecessary calls to glActiveTexture 8 years ago
Tony Crisci effea557bb Implement destroying surfaces 8 years ago
Tony Crisci 6610aa7ca7 Implement shm buffer surface attach interface 8 years ago
Drew DeVault b08aa9fd35 Revert "Merge pull request from ascent12/meson" 8 years ago
Scott Anderson a2ba226ba3 Use subdir 8 years ago
Scott Anderson 924bf0f669 Changed build system to meson 8 years ago
Drew DeVault 8920b5d607 Merge branch 'wlcore' 8 years ago
Scott Anderson 0cd94f0cf0 Added software cursor fallback 8 years ago
Drew DeVault 5a2796266f Support wl_shm pixel formats in gles2 renderer 8 years ago
Drew DeVault 2aafb5dd19 Add wlcore/wl_shm (WIP) 8 years ago
Drew DeVault f252c5a792 Manually transpose matricies in shader 8 years ago
Drew DeVault b18209c904 Switch to GLES2 8 years ago
Drew DeVault f4453d104d Reorganize wlr-common 8 years ago
Drew DeVault c9d5a0b2fb Clean up Wayland backend GL context and such 8 years ago
Drew DeVault 2443a070e7 Add colored quad and ellipse rendering primitives 8 years ago
Drew DeVault 7a25d6c50b Destroy gles3 wlr_surfaces 8 years ago
Drew DeVault 2b909e1729 Add error "handling" to gles3 backend 8 years ago
Drew DeVault cd6a40d816 Further improvements to rendering subsystem 8 years ago
Drew DeVault 83f8864f0a Add wlr_renderer and move quad rendering there 8 years ago
Drew DeVault 211488131f Add wlr_shader to wlr-render 8 years ago
Drew DeVault fc1dc1b5b0 Use constant VBO for quad, add matrix stuff 8 years ago