Guido Günther
2d01663b25
gles2: Honor alpha in fragment_src_external
...
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
7 years ago
Guido Günther
13e4ba4867
gles2_texture_bind: use texture's target type
...
Hardcoding GL_TEXTURE_2D leads to rendering errors when using
GL_TEXTURE_EXTERNAL_OES textures.
7 years ago
Guido Günther
b3cb5a36c7
gles2: allow to specify texture target type
...
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.
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
...
Setting glUniformMatrix3fv's transpose parameter to GL_TRUE is
not allowed for OpenGL ES 2.
This adds a wlr_matrix_transpose function.
7 years ago
Drew DeVault
1956d3cedb
Merge pull request #722 from emersion/matrix-redesign
...
Matrix redesign
7 years ago
Guido Günther
7fd7dff26f
egl: print supported dmabuf formats
...
Useful for debugging dmabuf related problems e.g. when a client requests
a certain and we fail to support it.
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
...
since this is the most established indentation
7 years ago
Guido Günther
14cdb6153f
Add initial linux_dmabuf protocol support
...
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.
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 #691 from agx/egl_ext_match
...
Avoid false positives on egl extension matching
7 years ago
Guido Günther
d9f2e90df6
Avoid false positives on egl extension matching
...
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
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
...
This matches the return value of elgCreateImage in case of error.
7 years ago
Guido Günther
d08792bfff
Add alpha to wlr_render_with_matrix
...
so we can use the alpha channel to e.g. blend in textures
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
...
useful for debugging
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 #580 from emersion/screenshooter-renderer-backport
...
Backport screenshooter fixes from the renderer redesign v1
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
...
This backports some changes to #319 to fix the screenshooter data
format. This also adds wlr_backend_get_renderer which will be
useful to support multiple renderers.
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 #572
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 #453 from emersion/surface-transform
...
Add surface transforms support
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