Merge pull request #224 from jackohound/add_qcom_yuv_texture_gather
add QCOM_YUV_texture_gather
diff --git a/extensions/QCOM/QCOM_YUV_texture_gather.txt b/extensions/QCOM/QCOM_YUV_texture_gather.txt
new file mode 100644
index 0000000..57e11eb
--- /dev/null
+++ b/extensions/QCOM/QCOM_YUV_texture_gather.txt
@@ -0,0 +1,97 @@
+Name
+ QCOM_YUV_texture_gather
+
+Name Strings
+
+ GL_QCOM_YUV_texture_gather
+
+Contact
+
+ Jeff Leger ( jleger 'at' qti.qualcomm.com)
+
+Contributors
+
+ Jeff Leger, Qualcomm
+
+
+Status
+
+ Complete
+
+Version
+
+ Last Modified Date: October 18, 2018
+ Revision: 1
+
+Number
+
+ OpenGL ES Extension #307
+
+
+Dependencies
+
+ Requires OpenGL ES 3.0
+ Requires GL_EXT_YUV_target
+ Requires EXT_gpu_shader5
+
+
+Overview
+
+ Extension EXT_gpu_shader5 introduced the texture gather built-in functions.
+ Extension EXT_YUV_target adds the ability to sample from YUV textures, but
+ does not include gather functions. This extension allows gather function
+ to be used in combination with the YUV textures exposed in EXT_YUV_target.
+
+IP Status
+
+ No known IP claims.
+
+New Procedures and Functions
+
+ None
+
+New Tokens
+
+ None
+
+Modifications to The OpenGL ES Shading Language Specification, Version 3.00,
+dated 29 January 2016.
+
+ Including the following line in a shader can be used to control the
+ language features described in this extension:
+
+ #extension QCOM_YUV_texture_gather : <behavior>
+
+ where <behavior> is as specified in section 3.4.
+
+ A new preprocessor #define is added to the OpenGL ES Shading Language:
+
+ #define QCOM_YUV_texture_gather 1
+
+
+ Add to the list of texture gather functions as introduced with EXT_gpu_shader5
+ and core functionality in ESSL 3.1 the following additional function:
+
+ vec4 textureGather(__samplerExternal2DY2YEXT sampler, vec2 P [, int comp] )
+
+Errors
+
+ None.
+
+New State
+
+ None.
+
+New Implementation Dependent State
+
+ None
+
+Issues
+
+ None.
+
+Revision History
+
+ Rev. Date Author Changes
+ ---- ---------- -------- -----------------------------------------
+ 1 2018-10-18 jleger initial version
diff --git a/extensions/registry.py b/extensions/registry.py
old mode 100755
new mode 100644
index f5f389d..b68ff48
--- a/extensions/registry.py
+++ b/extensions/registry.py
@@ -4400,6 +4400,11 @@
'flags' : { 'public' },
'url' : 'extensions/QCOM/QCOM_shader_framebuffer_fetch_noncoherent.txt',
},
+ 'GL_QCOM_YUV_texture_gather' : {
+ 'esnumber' : 307,
+ 'flags' : { 'public' },
+ 'url' : 'extensions/QCOM/QCOM_YUV_texture_gather.txt',
+ },
'GL_QCOM_shader_framebuffer_fetch_rate' : {
'esnumber' : 304,
'flags' : { 'public' },
diff --git a/xml/gl.xml b/xml/gl.xml
old mode 100755
new mode 100644
index 92a0dce..a5f1b67
--- a/xml/gl.xml
+++ b/xml/gl.xml
@@ -49495,6 +49495,8 @@
<enum name="GL_WRITEONLY_RENDERING_QCOM"/>
</require>
</extension>
+ <extension name="GL_QCOM_YUV_texture_gather" supported="gles2">
+ </extension>
<extension name="GL_REND_screen_coordinates" supported="gl">
<require>
<enum name="GL_SCREEN_COORDINATES_REND"/>