diff options
Diffstat (limited to 'gpu/GLES2')
-rw-r--r-- | gpu/GLES2/extensions/CHROMIUM/CHROMIUM_path_rendering.txt | 65 | ||||
-rw-r--r-- | gpu/GLES2/gl2chromium.h | 4 | ||||
-rw-r--r-- | gpu/GLES2/gl2chromium_autogen.h | 2 | ||||
-rw-r--r-- | gpu/GLES2/gl2extchromium.h | 16 |
4 files changed, 87 insertions, 0 deletions
diff --git a/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_path_rendering.txt b/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_path_rendering.txt new file mode 100644 index 0000000..d2e8c93 --- /dev/null +++ b/gpu/GLES2/extensions/CHROMIUM/CHROMIUM_path_rendering.txt @@ -0,0 +1,65 @@ +Name + + CHROMIUM_path_rendering + +Name Strings + + GL_CHROMIUM_path_rendering + +Version + + Last Modifed Date: August 14, 2014 + +Dependencies + + OpenGL ES 3.0 is required. + +Overview + + This extensions implements path rendering using + OpenGL API. + +New Tokens + + Accepted by the <matrixMode> parameter of MatrixLoadfCHROMIUM and + MatrixLoadIdentityCHROMIUM: + PATH_MODELVIEW_CHROMIUM 0x1700 + PATH_PROJECTION_CHROMIUM 0x1701 + + Accepted by the <pname> parameter of GetIntegerv, + GetFloatv: + PATH_MODELVIEW_MATRIX_CHROMIUM 0x0BA6 + PATH_PROJECTION_MATRIX_CHROMIUM 0x0BA7 + + +New Procedures and Functions + + void MatrixLoadfCHROMIUM(enum matrixMode, float* matrix) + + Takes a pointer to a 4x4 matrix stored in column-major order as 16 + consecutive floating-point values. The matrixMode specifies which + matrix, PATH_MODELVIEW_CHROMIUM or PATH_PROJECTION_CHROMIUM is used. + + The funcition specifies either modelview or projection matrix + to be used with path rendering API calls. + + void MatrixLoadIdentityCHROMIUM(enum matrixMode) + + Effectively calls MatrixLoadf with the identity matrix. + +Errors + + None. + +New State + + Get Value Type Get Command Initial Description + ----------------------------- ----- ------------ -------- ------------------- + PATH_MODELVIEW_MATRIX_CHROMIUM 16xR GetFloatv all 0's Current modelview + matrix for path rendering + PATH_PROJECTION_MATRIX_CHROMIUM 16xR GetFloatv all 0's Current projection + matrix for path rendering + +Revision History + + 14/8/2014 Documented the extension diff --git a/gpu/GLES2/gl2chromium.h b/gpu/GLES2/gl2chromium.h index 42889dd..0dc648d 100644 --- a/gpu/GLES2/gl2chromium.h +++ b/gpu/GLES2/gl2chromium.h @@ -10,6 +10,10 @@ #include <GLES2/gl2platform.h> #define GL_CONTEXT_LOST 0x300E +#define GL_PATH_MODELVIEW_CHROMIUM 0x1700 +#define GL_PATH_PROJECTION_CHROMIUM 0x1701 +#define GL_PATH_MODELVIEW_MATRIX_CHROMIUM 0x0BA6 +#define GL_PATH_PROJECTION_MATRIX_CHROMIUM 0x0BA7 #if defined(GLES2_USE_MOJO) #define GLES2_GET_FUN(name) MojoGLES2gl ## name diff --git a/gpu/GLES2/gl2chromium_autogen.h b/gpu/GLES2/gl2chromium_autogen.h index 7f3bbee..e71c0f7 100644 --- a/gpu/GLES2/gl2chromium_autogen.h +++ b/gpu/GLES2/gl2chromium_autogen.h @@ -239,5 +239,7 @@ #define glDiscardBackbufferCHROMIUM GLES2_GET_FUN(DiscardBackbufferCHROMIUM) #define glScheduleOverlayPlaneCHROMIUM \ GLES2_GET_FUN(ScheduleOverlayPlaneCHROMIUM) +#define glMatrixLoadfCHROMIUM GLES2_GET_FUN(MatrixLoadfCHROMIUM) +#define glMatrixLoadIdentityCHROMIUM GLES2_GET_FUN(MatrixLoadIdentityCHROMIUM) #endif // GPU_GLES2_GL2CHROMIUM_AUTOGEN_H_ diff --git a/gpu/GLES2/gl2extchromium.h b/gpu/GLES2/gl2extchromium.h index 0671187..b5ab0cb 100644 --- a/gpu/GLES2/gl2extchromium.h +++ b/gpu/GLES2/gl2extchromium.h @@ -717,6 +717,22 @@ typedef void(GL_APIENTRYP PFNGLSCHEDULEOVERLAYPLANECHROMIUMPROC)( #endif #endif /* GL_CHROMIUM_sync_query */ +#ifndef GL_CHROMIUM_path_rendering +#define GL_CHROMIUM_path_rendering 1 + +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY + glMatrixLoadfCHROMIUM(GLenum mode, const GLfloat* m); +GL_APICALL void GL_APIENTRY glMatrixLoadIdentityCHROMIUM(GLenum mode); +#endif + +typedef void(GL_APIENTRYP PFNGLMATRIXLOADFCHROMIUMPROC)(GLenum matrixMode, + const GLfloat* m); +typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYCHROMIUMPROC)( + GLenum matrixMode); + +#endif /* GL_CHROMIUM_path_rendering */ + #ifdef __cplusplus } #endif |