OLD | NEW |
1 Name | 1 Name |
2 | 2 |
3 CHROMIUM_gpu_memory_buffer_image | 3 CHROMIUM_gpu_memory_buffer_image |
4 | 4 |
5 Name Strings | 5 Name Strings |
6 | 6 |
7 GL_CHROMIUM_gpu_memory_buffer_image | 7 GL_CHROMIUM_gpu_memory_buffer_image |
8 | 8 |
9 Version | 9 Version |
10 | 10 |
(...skipping 13 matching lines...) Expand all Loading... |
24 Issues | 24 Issues |
25 | 25 |
26 None | 26 None |
27 | 27 |
28 New Tokens | 28 New Tokens |
29 | 29 |
30 Accepted by the <usage> parameter of CreateGpuMemoryBufferImageCHROMIUM: | 30 Accepted by the <usage> parameter of CreateGpuMemoryBufferImageCHROMIUM: |
31 | 31 |
32 READ_WRITE_CHROMIUM 0x78F2 | 32 READ_WRITE_CHROMIUM 0x78F2 |
33 | 33 |
34 Accepted by the <param> parameter of GetImageivCHROMIUM: | |
35 | |
36 GL_GPU_MEMORY_BUFFER_ID 0x78FD | |
37 | |
38 New Procedures and Functions | 34 New Procedures and Functions |
39 | 35 |
40 GLuint CreateGpuMemoryBufferImageCHROMIUM(GLsizei width, | 36 GLuint CreateGpuMemoryBufferImageCHROMIUM(GLsizei width, |
41 GLsizei height, | 37 GLsizei height, |
42 GLenum internalformat, | 38 GLenum internalformat, |
43 GLenum usage) | 39 GLenum usage) |
44 | 40 |
45 Create a GpuMemoryBuffer backed image with width equal to <width> | 41 Create a GpuMemoryBuffer backed image with width equal to <width> |
46 and height equal to <height> and format equal to <internalformat>. | 42 and height equal to <height> and format equal to <internalformat>. |
47 | 43 |
48 Returns a unique identifier for the image that could be used in | 44 Returns a unique identifier for the image that could be used in |
49 subsequent operations. | 45 subsequent operations. |
50 | 46 |
51 INVALID_VALUE is generated if <width> or <height> is nonpositive. | 47 INVALID_VALUE is generated if <width> or <height> is nonpositive. |
52 | 48 |
53 INVALID_ENUM is generated if <internalformat> is not one of | 49 INVALID_ENUM is generated if <internalformat> is not one of |
54 RGB or RGBA. | 50 RGB or RGBA. |
55 | 51 |
56 INVALID_ENUM is generated if <usage> is not READ_WRTIE_CHROMIUM. | 52 INVALID_ENUM is generated if <usage> is not READ_WRTIE_CHROMIUM. |
57 | 53 |
58 On OS X, driver bugs prevent the usage of memory buffers with RGB internal | 54 On OS X, driver bugs prevent the usage of memory buffers with RGB internal |
59 format. As a workaround, the created GpuMemoryBuffer will always have | 55 format. As a workaround, the created GpuMemoryBuffer will always have |
60 internal format RGBA. The caller is responsible for handling this | 56 internal format RGBA. The caller is responsible for handling this |
61 appropriately. The only support provided by this extension is that calls | 57 appropriately. The only support provided by this extension is that calls |
62 that require parameter validation (such as copyTexImage2D and | 58 that require parameter validation (such as copyTexImage2D and |
63 copyTexSubImage2D) will perform paramter validation as if the internal | 59 copyTexSubImage2D) will perform paramter validation as if the internal |
64 format were RGB. | 60 format were RGB. |
65 | 61 |
66 void GetImageivCHROMIUM(GLuint image_id, GLenum param, GLint* data) | |
67 | |
68 When the parameter GL_GPU_MEMORY_BUFFER_ID is passed as <param>, returns the | |
69 id of the GpuMemoryBuffer associated with <image_id>. If the image does not | |
70 exist, or is not associated with a GpuMemoryBuffer, returns -1. | |
71 | |
72 Errors | 62 Errors |
73 | 63 |
74 None. | 64 None. |
75 | 65 |
76 New State | 66 New State |
77 | 67 |
78 None. | 68 None. |
79 | 69 |
80 Revision History | 70 Revision History |
81 | 71 |
82 9/29/2014 Documented the extension. | 72 9/29/2014 Documented the extension. |
83 4/12/2016 Added details of OS X RGB workaround. | 73 4/12/2016 Added details of OS X RGB workaround. |
84 5/25/2016 Added the GetImageivCHROMIUM function. | |
OLD | NEW |