Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / gpu / GLES2 / extensions / CHROMIUM / CHROMIUM_schedule_overlay_plane.txt
1 Name
2
3     CHROMIUM_schedule_overlay_plane
4
5 Name Strings
6
7     GL_CHROMIUM_schedule_overlay_plane
8
9 Version
10
11     Last Modified Date: April 2, 2014
12
13 Dependencies
14
15     OpenGL ES 2.0 is required.
16
17 Overview
18
19     This extension allows a client to request a texture be presented as a
20     hardware overlay plane along with the framebuffer. The expectation is that
21     all the planes scheduled since the last call to glSwapBuffers or
22     glPostSubBufferCHROMIUM are displayed atomically with the framebuffer during
23     the next call to swap buffers. Scheduled planes are not stateful and need
24     to be rescheduled after the buffers were swapped.
25
26     This extension could be used in conjunction with OES_EGL_image_external
27     to render into buffers suitable for scanout and present them directly
28     via display hardware without further compositing in GLES.
29
30     An example use case would be displaying a video buffer which was decoded by
31     dedicated hardware as part of a GLES application.
32
33 Issues
34
35     None
36
37 New Tokens
38
39     None
40
41 New Procedures and Functions
42
43     The command
44
45         glScheduleOverlayPlaneCHROMIUM (GLint plane_z_order,
46                                         GLenum plane_transform,
47                                         GLuint overlay_texture_id,
48                                         GLint bounds_x,
49                                         GLint bounds_y,
50                                         GLint bounds_width,
51                                         GLint bounds_height,
52                                         GLfloat uv_x,
53                                         GLfloat uv_y,
54                                         GLfloat uv_width,
55                                         GLfloat uv_height);
56
57     Sets the overlay plane to be presented synchronously along with the primary
58     framebuffer during the call to swap buffers.
59     <plane_z_order> specifies the stacking order of the plane relative to the
60     main framebuffer located at index 0.
61     <plane_transform> specifies how the buffer is to be transformed during
62     composition.
63     <overlay_texture_id> is the buffer to be presented by the overlay.
64     <bounds_x>, <bounds_y>, <bounds_width>, <bounds_height> specify where it is
65     supposed to be on the screen.
66     <uv_x>, <uv_y>, <uv_width>, <uv_height> specify the region within the
67     buffer to be placed inside the bounds.
68
69 Errors
70
71     None.
72
73 New State
74
75     None.