Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(162)

Side by Side Diff: gpu/GLES2/extensions/CHROMIUM/CHROMIUM_copy_texture.txt

Issue 864513004: gpu: introduce glCopySubTextureCHROMIUM (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address concerns of owners Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 Name 1 Name
2 2
3 CHROMIUM_copy_texture 3 CHROMIUM_copy_texture
4 4
5 Name Strings 5 Name Strings
6 6
7 GL_CHROMIUM_copy_texture 7 GL_CHROMIUM_copy_texture
8 8
9 Version 9 Version
10 10
(...skipping 18 matching lines...) Expand all
29 If GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM and 29 If GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM and
30 GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM are enabled. Then no alpha 30 GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM are enabled. Then no alpha
31 processing occurs. This is the equivalent of having neither flag set. 31 processing occurs. This is the equivalent of having neither flag set.
32 32
33 The extension also supports copying BGRA textures and copying 33 The extension also supports copying BGRA textures and copying
34 EXTERNAL_OES texture to BGRA texture, which is not explicitly 34 EXTERNAL_OES texture to BGRA texture, which is not explicitly
35 granted by EXT_texture_format_BGRA8888. 35 granted by EXT_texture_format_BGRA8888.
36 36
37 New Procedures and Functions 37 New Procedures and Functions
38 38
39 void glCopyTextureCHROMIUM (GLenum target, GLenum source_id, 39 The command
40 GLenum dest_id, GLint level,
41 GLint internal_format, GLenum dest_type)
42 40
43 Copies the contents of texture referred to by <source_id> to texture 41 void glCopyTextureCHROMIUM (GLenum target, GLenum source_id,
44 <dest_id>. 42 GLenum dest_id, GLint level,
43 GLint internal_format, GLenum dest_type)
44
45 Copies the contents of texture referred to by <source_id> to <dest_id>
46 texture. If <source_id> texture is not defined or has different dimension
47 to <dest_id> texture, define <source_id> texture same to <dest_id> texture.
45 48
46 Texture level 0 is copied from the source image to level <level> of the 49 Texture level 0 is copied from the source image to level <level> of the
47 destination texture. The level parameter must be 0 at present. 50 destination texture. The level parameter must be 0 at present.
48 51
49 The internal format of the destination texture is converted to that 52 The internal format of the destination texture is converted to that
50 specified by <internal_format>. Must be one of the following symbolic 53 specified by <internal_format>. Must be one of the following symbolic
51 constants: GL_RGB, GL_RGBA 54 constants: GL_RGB, GL_RGBA
52 The internal format of <source_id> texture must be one of the following 55 The internal format of <source_id> texture must be one of the following
53 symbolic constants: GL_ALPHA, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_RGB, 56 symbolic constants: GL_ALPHA, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_RGB,
54 GL_RGBA, GL_BGRA_EXT 57 GL_RGBA, GL_BGRA_EXT
(...skipping 28 matching lines...) Expand all
83 INVALID_VALUE is generated if textures corresponding to <dest_id> have not 86 INVALID_VALUE is generated if textures corresponding to <dest_id> have not
84 been bound as GL_TEXTURE_2D object. 87 been bound as GL_TEXTURE_2D object.
85 88
86 INVALID_VALUE is generated if textures corresponding to <source_id> have not 89 INVALID_VALUE is generated if textures corresponding to <source_id> have not
87 been bound as GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE_ARB or 90 been bound as GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE_ARB or
88 GL_TEXTURE_EXTERNAL_OES objects. 91 GL_TEXTURE_EXTERNAL_OES objects.
89 92
90 INVALID_VALUE is generated if <level> is not a valid level of the 93 INVALID_VALUE is generated if <level> is not a valid level of the
91 destination texture, or if level 0 of the source texture is not defined. 94 destination texture, or if level 0 of the source texture is not defined.
92 95
96 The command
97
98 void glCopySubTextureCHROMIUM (GLenum target, GLenum source_id,
99 GLenum dest_id, GLint level,
100 GLint xoffset, GLint yoffset)
101
102 Copies the sub contents of texture referred to by <source_id> to <dest_id>
103 texture without redefining <dest_id> texture.
104
105 See CopyTextureCHROMIUM for the interpretation of the <target> and <level>
106 arguments.
107
108 <xoffset> and <yoffset> specify a texel offset in the x and y direction
109 respectively within the destination texture.
110
111 INVALID_OPERATION is generated if source internal_format and destination
112 internal_format are not one of the valid formats described above.
113
114 INVALID_VALUE is generated if <target> is not GL_TEXTURE_2D.
115
116 INVALID_OPERATION is generated if the destination texture has not been
117 defined.
118
119 INVALID_VALUE is generated if <level> is less than 0.
120
121 INVALID_VALUE may be generated if <level> >log2(max), where max is
Ken Russell (switch to Gerrit) 2015/02/25 22:19:10 I think this should say "is" instead of "may be".
122 the returned value of GL_MAX_TEXTURE_SIZE.
123
124 INVALID_VALUE is generated if <xoffset> < 0 , or <yoffset> < 0.
125
126 INVALID_VALUE is generated if (<xoffset> + source_width) > dest_width,
127 or (<yoffset> + source_height) > dest_height.
128
93 Errors 129 Errors
94 130
95 None. 131 None.
96 132
97 New Tokens 133 New Tokens
98 134
99 None. 135 None.
100 136
101 New State 137 New State
102 138
103 None. 139 None.
104 140
105 Revision History 141 Revision History
106 142
107 8/1/2011 Documented the extension 143 8/1/2011 Documented the extension
108 7/4/2013 Add a new parameter dest_type to glCopyTextureCHROMIUM() 144 7/4/2013 Add a new parameter dest_type to glCopyTextureCHROMIUM()
109 16/7/2014 Add GL_TEXTURE_RECTANGLE_ARB as valid source_id target. 145 16/7/2014 Add GL_TEXTURE_RECTANGLE_ARB as valid source_id target.
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698