emersion
62d646f2b8
render/gles2: remove assumptions about supported formats
...
We were assuming GL_BGRA_EXT was always supported.
We now check that it's supported for rendering. We fail if it isn't because
this format is specified as "always supported" by the Wayland protocol.
We also check if it's supported for reading pixels. A new preferred_read_format
function returns the preferred format that can be used to read pixels. This is
used by the screencopy protocol.
6 years ago
nyorain
cb03a41a3b
Use enum wl_shm_format for gles2 texture formats
...
Also rephrase the write_pixels comment.
6 years ago
nyorain
cd28637187
Remove fmt parameter from wlr_texture_write_pixels
...
It's not allowed to change the format of a texture so remove
the confusing parameter.
6 years ago
Mariusz Bialonczyk
ad406db21c
gles2: change context when it is not current
...
Texture functions, that create and manipulate textures should switch
the current context if necessary.
thanks to: @emersion
Fixes #934
6 years ago
emersion
7cbef15206
util: add wlr_ prefix to log symbols
6 years ago
NeKit
6f29db1044
gles2 renderer: introduce struct wlr_gles2_tex_shader
7 years ago
NeKit
de91c55ea9
Fix GLES2 renderer to use glGetUniformLocations locations
...
This is needed as uniform locations are driver implementation-specific.
7 years ago
emersion
71ca45e2c0
Make sure we don't use others' prefixes
7 years ago
emersion
1b802d9251
Make wlr_renderer_scissor take normal coords instead of upside-down ones
7 years ago
emersion
f3f61bed3e
Untie wlr_gles2_renderer and wlr_gles2_texture
7 years ago
Tony Crisci
330ee08126
Merge pull request #744 from emersion/texture-redesign
...
Redesign wlr_texture
7 years ago
emersion
c42fd1018b
render: remove GL calls from wlr_egl
7 years ago
emersion
c63d94483b
Redesign wlr_texture
...
- 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.
7 years ago
emersion
cc5ef1d2ff
render/gles2: move list of supported WL formats to pixel_format.c
7 years ago
emersion
95e86e675a
render/gles2: remove global state, use OpenGL debug extension
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
Guido Günther
2688f6163f
Rename _strip_path to wlr_strip_path
...
since it's a public function
7 years ago
emersion
c2e1474010
Reformat all #include directives
7 years ago
Scott Anderson
9b984253e2
Move egl.h to render/egl.h
7 years ago
emersion
427bdb5b55
Use more consistent include guard names
7 years ago
Dominique Martinet
f24b3df980
wlr renderer/texture: rename init to create when it does alloc
7 years ago
Drew DeVault
de6f32c84e
Refactor away wlr_renderer_state
7 years ago
Drew DeVault
94e6e6334b
Refactor out wlr_texture_state
7 years ago
Drew DeVault
c24351681f
Refactor EGL handling
7 years ago
nyorain
1901c3e1b6
Fix example for updated gles
7 years ago
nyorain
67369173aa
Implement drm (egl) buffer attaching
7 years ago
nyorain
e167f41fde
Rename wlr_surface -> wlr_texture; attach -> upload
7 years ago
Scott Anderson
8189c64d7f
Fixed that warnings that showed up with optimisations.
7 years ago
Drew DeVault
5a2796266f
Support wl_shm pixel formats in gles2 renderer
8 years ago
Drew DeVault
b18209c904
Switch to GLES2
...
Closes #13
8 years ago
Drew DeVault
2443a070e7
Add colored quad and ellipse rendering primitives
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