Vladimír Vondruš
32613a592a
Implemented glClearBuffer() APIs from GL 3.0 / GLES 3.0.
...
According to my browser, glClear() can't be used to clear integer
framebuffers, so this APIs are needed.
9 years ago
Vladimír Vondruš
2145ae9b96
Dropped NaCl support.
9 years ago
Vladimír Vondruš
7a16273e5d
Updated copyright year.
9 years ago
Vladimír Vondruš
3b3f71faa9
doc: adapted GL function/extension to Khronos domain move.
...
Followup to previous commit -- links to opengl.org are now redirected to
khronos.org and the extension links have the same format for both GL and
GLES. That allows me to remove some of the Doxygen aliases and use just
a single set of the functions for both GL and GLES.
9 years ago
Vladimír Vondruš
a60dc74dac
Implemented Mesh::draw(..., TransformFeedback&).
...
Supports classic, instanced, stream and stream instanced draw. With this
I consider the transform feedback implementation complete.
10 years ago
Vladimír Vondruš
9642869c59
Implemented ARB_transform_feedback_overflow_query.
10 years ago
Vladimír Vondruš
9373a2e01d
Support for AMD_transform_feedback3_lines_triangles.
...
Just adding the extension to the list, otherwise not much to do.
10 years ago
Vladimír Vondruš
f275143e9f
Support for indexed primitive queries.
...
Amazing how it all still fits my original design without needing to
rewrite half of the API.
10 years ago
Vladimír Vondruš
f68b40c5d9
Implemented *Framebuffer::copyImage() and copySubImage().
...
Default, ARB_DSA and EXT_DSA paths.
10 years ago
Vladimír Vondruš
80dc656ccc
Recognize OES_fbo_render_mipmap ES2 and WebGL 1 extension.
10 years ago
Vladimír Vondruš
889171303e
Mark EXT_shader_framebuffer_fetch as semi-supported.
10 years ago
Vladimír Vondruš
d2f8821ce7
Implemented KHR_no_error.
10 years ago
Vladimír Vondruš
58c98cae3e
Added EXT_shader_framebuffer_fetch ES extension to the list.
...
And also ARM_shader_framebuffer_fetch and
ARM_shader_framebuffer_fetch_depth_stencil.
10 years ago
Vladimír Vondruš
9500040f8e
Added KHR_no_error desktop and ES extension.
10 years ago
Vladimír Vondruš
23646e6690
Hell, this project is big.
10 years ago
Vladimír Vondruš
bcd8a81ba5
Implemented ARB_compute_shader.
...
The test fails somehow, but too tired to fix anything now.
10 years ago
Vladimír Vondruš
d9b25c6057
Implemented ARB_shader_image_load_store.
10 years ago
Vladimír Vondruš
97bd725bf5
doc: clarify how much of ARB_uniform_buffer_object is supported.
10 years ago
Vladimír Vondruš
62064d523d
ARB_shader_storage_buffer_object seems to be done now.
...
That binding function is not needed as I would deprecate it anyway.
10 years ago
Vladimír Vondruš
f71bd7a2b8
Implemented ARB_texture_barrier.
10 years ago
Vladimír Vondruš
5b6875ca4a
Implemented glMemoryBarrier() from ARB_shader_image_load_store.
...
And also the ByRegion variant from ES3.1.
10 years ago
Vladimír Vondruš
1caf96a347
Finally completed ARB_uniform_buffer_object.
...
Also with ES3/WebGL2 port.
10 years ago
Vladimír Vondruš
645edecbcd
Compressed image support, part 15: compressed subimage download.
...
NVidia reports compressed block data size in bits instead of bytes, thus
all the test currently fail. (Another) workaround incoming.
10 years ago
Vladimír Vondruš
56cdc71a52
Compressed image support, part 14: queries for compressed block sizes.
10 years ago
Vladimír Vondruš
3d9d70f153
Support for layered texture attachments in Framebuffer.
...
I.e. rendering to a layer addressed by `gl_Layer` in geometry shader.
11 years ago
Vladimír Vondruš
2ad49aa351
Support for KHR_blend_equation_advanced{,_coherent}.
11 years ago
Vladimír Vondruš
3067bbcf7e
Pixel storage support, part 10: actually use the parameters now.
...
Pain and misery. Majority of functionality for 3D compressed images now
suddenly fails the test -- this is either very vaguely specified or I am
very bad at understanding things or there are bugs in my NVidia drivers.
This was awful feature. Kill me now.
11 years ago
Vladimír Vondruš
6110ba0922
Pixel storage support, part 3: EXT_unpack_subimage and NV_pack_subimage.
...
ES 2.0 extensions to match ES3/desktop functionality. The enums from
NV_pack_subimage are not available in gl.xml from Khronos, I would need
to use hardcoded value.
11 years ago
Vladimír Vondruš
a91d6fc193
Compressed image support, part 11: support ASTC formats.
11 years ago
Vladimír Vondruš
75ef110efe
Compressed image support, part 10: support ETC2/EAC formats.
11 years ago
Vladimír Vondruš
c470bc1e85
Compressed image support, part 7: compressed (sub)image upload.
...
No tests yet.
11 years ago
Vladimír Vondruš
7aef7f44f5
Compressed image support, part 5: added EXT_texture_compression_s3tc.
...
And related WebGL extension. Why the hell do they need their own naming
again?!
11 years ago
Vladimír Vondruš
3adec2432c
Implemented EXT_tessellation_shader AEP extension.
11 years ago
Vladimír Vondruš
cb44f06359
Added NV_shader_noperspective_interpolation ES3 extension.
11 years ago
Vladimír Vondruš
52be3a44b1
Implemented EXT_geometry_shader AEP extension.
11 years ago
Vladimír Vondruš
70cb1041aa
Implemented EXT_texture_buffer AEP extension.
11 years ago
Vladimír Vondruš
c0baad30a2
Implemented EXT_texture_cube_map_array AEP extension.
11 years ago
Vladimír Vondruš
4276d65a75
Implemented EXT_texture_border_clamp AEP extension.
...
Replaced NV_texture_border_clamp enum values with EXT ones, as this is a
superset of the NV extension.
11 years ago
Vladimír Vondruš
c4b74f72a8
Implemented OES_texture_stencil8 AEP extension.
11 years ago
Vladimír Vondruš
6f2b39ea94
Implemented OES_texture_storage_multisample_2d_array AEP extension.
11 years ago
Vladimír Vondruš
361ab62fe9
Added ANDROID_extension_pack_es31a extensions.
...
Just added them to the list, nothing integrated or implemented yet. Also
added some more stuff into OpenGL mapping table, as I apparently forgot
some entries.
11 years ago
Vladimír Vondruš
0dba2601e3
Added KHR_blend_equation_advanced{,_coherent} extensions.
11 years ago
Vladimír Vondruš
83824094df
doc: fix ES extension links.
11 years ago
Vladimír Vondruš
4720a8db96
Implement NV_polygon_mode ES extension.
11 years ago
Vladimír Vondruš
df6acb10ab
Implement EXT_sRGB_write_control ES extension.
11 years ago
Vladimír Vondruš
6313791812
Don't expose EXT_sRGB on ES3/WebGL2 builds.
...
It is superseded by core functionality. The only annoyance is that you
need to use TextureFormat::SRGB in ES2 and TextureFormat::SRGB8 in ES3,
but that's with many other formats anyway. Also apparently the unsized
format is still allowed in core desktop GL, which is a shame.
11 years ago
Vladimír Vondruš
d34cbb73b7
Clarified and cleaned up WebGL extension support list.
...
For more clarity it's now better to explicitly list all extensions for
each API even though they might get duplicated. For WebGL they also link
to WebGL spec, which might contain a bit more info.
11 years ago
Vladimír Vondruš
2a9b5c269e
doc: clarify which extensions are present in WebGL.
11 years ago
Vladimír Vondruš
d3e83f797d
Expose CHROMIUM_map_sub only for NaCl.
...
It's not even in official registry.
11 years ago
Vladimír Vondruš
92e923d056
First-class WebGL support, part 14: reduced available extensions.
...
This was the actual problem. Most of ES extensions are not available in
WebGL, thus the GL headers and the code was far more bloated than it
needed to be. The GL header is now reduced and the previous 13 commits
were disabling features that aren't actually available in WebGL.
The final executable size is reduced by ~50 kB, which actually isn't
much, but still something.
Some ES extensions (ANGLE_depth_texture and ANGLE_instanced_arrays) have
now WEBGL_* prefix. I'm still using the original prefix in the
implementation because there are headers for these, but in public docs
and elsewhere they are exposed with WEBGL_*.
11 years ago