js-apis-webgl2.md 35.5 KB
Newer Older
Y
yexiandong 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501
# WebGL2

> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。


WebGL标准图形API,对应OpenGL ES 3.0特性集。更多信息请参考[WebgGL™标准](https://www.khronos.org/registry/webgl/specs/latest/2.0/)



## 导入模块

```
import webgl from 'ohos.webglnapi'
```


## 系统能力

SystemCapability.Graphic.Graphic2D.WebGL2


## 调用方式

```
// 获取canvas组件实例
const el = this.$refs.canvas
// 从canvas组件实例获取WebGL上下文
const gl = el.getContext('webgl');
const gl2 = el.getContext('webgl2');
// 调用WebGL API
gl2.readBuffer(gl.COLOR_ATTACHMENT0)
```


## GLenum

| 名称 | 类型 |
| -------- | -------- |
| GLenum | number |


## Glint64

| 名称 | 类型 |
| -------- | -------- |
| Glint64 | number |


## Gluint64

| 名称 | 类型 |
| -------- | -------- |
| Gluint64 | number |


## Uint32List

| 名称 | 类型 |
| -------- | -------- |
| Uint32List | array |


## webgl.webGL2RenderingContexBase

WebGL2RenderingContexBase


### 属性

| 名称 | 参数类型 | 必填 |
| -------- | ------- | --------- |
| READ_BUFFER | [GLenum](#GLenum) | 是 |
| UNPACK_ROW_LENGTH | [GLenum](#GLenum) | 是 |
| UNPACK_SKIP_ROWS  | [GLenum](#GLenum) | 是 |
| UNPACK_SKIP_PIXELS  | [GLenum](#GLenum) | 是 |
| PACK_ROW_LENGTH  | [GLenum](#GLenum) | 是 |
| PACK_SKIP_ROWS  | [GLenum](#GLenum) | 是 |
| PACK_SKIP_PIXELS  | [GLenum](#GLenum) | 是 |
| COLOR  | [GLenum](#GLenum) | 是 |
| DEPTH  | [GLenum](#GLenum) | 是 |
| STENCIL  | [GLenum](#GLenum) | 是 |
| RED  | [GLenum](#GLenum) | 是 |
| RGB8  | [GLenum](#GLenum) | 是 |
| RGBA8  | [GLenum](#GLenum) | 是 |
| RGB10_A2  | [GLenum](#GLenum) | 是 |
| TEXTURE_BINDING_3D  | [GLenum](#GLenum) | 是 |
| UNPACK_SKIP_IMAGES  | [GLenum](#GLenum) | 是 |
| UNPACK_IMAGE_HEIGHT  | [GLenum](#GLenum) | 是 |
| TEXTURE_3D  | [GLenum](#GLenum) | 是 |
| TEXTURE_WRAP_R  | [GLenum](#GLenum) | 是 |
| MAX_3D_TEXTURE_SIZE  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_2_10_10_10_REV  | [GLenum](#GLenum) | 是 |
| MAX_ELEMENTS_VERTICES  | [GLenum](#GLenum) | 是 |
| MAX_ELEMENTS_INDICES  | [GLenum](#GLenum) | 是 |
| TEXTURE_MIN_LOD  | [GLenum](#GLenum) | 是 |
| TEXTURE_MAX_LOD  | [GLenum](#GLenum) | 是 |
| TEXTURE_BASE_LEVEL  | [GLenum](#GLenum) | 是 |
| TEXTURE_MAX_LEVEL  | [GLenum](#GLenum) | 是 |
| MIN  | [GLenum](#GLenum) | 是 |
| MAX  | [GLenum](#GLenum) | 是 |
| DEPTH_COMPONENT24  | [GLenum](#GLenum) | 是 |
| MAX_TEXTURE_LOD_BIAS  | [GLenum](#GLenum) | 是 |
| TEXTURE_COMPARE_MODE  | [GLenum](#GLenum) | 是 |
| TEXTURE_COMPARE_FUNC  | [GLenum](#GLenum) | 是 |
| CURRENT_QUERY  | [GLenum](#GLenum) | 是 |
| QUERY_RESULT  | [GLenum](#GLenum) | 是 |
| QUERY_RESULT_AVAILABLE  | [GLenum](#GLenum) | 是 |
| STREAM_READ  | [GLenum](#GLenum) | 是 |
| STREAM_COPY  | [GLenum](#GLenum) | 是 |
| STATIC_READ  | [GLenum](#GLenum) | 是 |
| STATIC_COPY  | [GLenum](#GLenum) | 是 |
| DYNAMIC_READ  | [GLenum](#GLenum) | 是 |
| DYNAMIC_COPY  | [GLenum](#GLenum) | 是 |
| MAX_DRAW_BUFFERS  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER0  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER1  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER2  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER3  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER4  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER5  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER6  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER7  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER8  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER9  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER10  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER11  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER12  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER13  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER14  | [GLenum](#GLenum) | 是 |
| DRAW_BUFFER15  | [GLenum](#GLenum) | 是 |
| MAX_FRAGMENT_UNIFORM_COMPONENTS  | [GLenum](#GLenum) | 是 |
| MAX_VERTEX_UNIFORM_COMPONENTS  | [GLenum](#GLenum) | 是 |
| SAMPLER_3D  | [GLenum](#GLenum) | 是 |
| SAMPLER_2D_SHADOW  | [GLenum](#GLenum) | 是 |
| FRAGMENT_SHADER_DERIVATIVE_HINT  | [GLenum](#GLenum) | 是 |
| PIXEL_PACK_BUFFER  | [GLenum](#GLenum) | 是 |
| PIXEL_UNPACK_BUFFER  | [GLenum](#GLenum) | 是 |
| PIXEL_PACK_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| PIXEL_UNPACK_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT2x3  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT2x4  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT3x2  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT3x4  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT4x2  | [GLenum](#GLenum) | 是 |
| FLOAT_MAT4x3  | [GLenum](#GLenum) | 是 |
| SRGB  | [GLenum](#GLenum) | 是 |
| SRGB8  | [GLenum](#GLenum) | 是 |
| SRGB8_ALPHA8  | [GLenum](#GLenum) | 是 |
| COMPARE_REF_TO_TEXTURE  | [GLenum](#GLenum) | 是 |
| RGBA32F  | [GLenum](#GLenum) | 是 |
| RGB32F  | [GLenum](#GLenum) | 是 |
| RGBA16F  | [GLenum](#GLenum) | 是 |
| RGB16F  | [GLenum](#GLenum) | 是 |
| VERTEX_ATTRIB_ARRAY_INTEGER  | [GLenum](#GLenum) | 是 |
| MAX_ARRAY_TEXTURE_LAYERS  | [GLenum](#GLenum) | 是 |
| MIN_PROGRAM_TEXEL_OFFSET  | [GLenum](#GLenum) | 是 |
| MAX_PROGRAM_TEXEL_OFFSET  | [GLenum](#GLenum) | 是 |
| MAX_VARYING_COMPONENTS  | [GLenum](#GLenum) | 是 |
| TEXTURE_2D_ARRAY  | [GLenum](#GLenum) | 是 |
| TEXTURE_BINDING_2D_ARRAY  | [GLenum](#GLenum) | 是 |
| R11F_G11F_B10F  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_10F_11F_11F_REV  | [GLenum](#GLenum) | 是 |
| RGB9_E5  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_5_9_9_9_REV  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BUFFER_MODE  | [GLenum](#GLenum) | 是 |
| MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_VARYINGS  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BUFFER_START  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BUFFER_SIZE  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN  | [GLenum](#GLenum) | 是 |
| RASTERIZER_DISCARD  | [GLenum](#GLenum) | 是 |
| MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS  | [GLenum](#GLenum) | 是 |
| MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS  | [GLenum](#GLenum) | 是 |
| INTERLEAVED_ATTRIBS  | [GLenum](#GLenum) | 是 |
| SEPARATE_ATTRIBS  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BUFFER  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| RGBA32UI  | [GLenum](#GLenum) | 是 |
| RGB32UI  | [GLenum](#GLenum) | 是 |
| RGBA16UI  | [GLenum](#GLenum) | 是 |
| RGB16UI  | [GLenum](#GLenum) | 是 |
| RGBA8UI  | [GLenum](#GLenum) | 是 |
| RGB8UI  | [GLenum](#GLenum) | 是 |
| RGBA32I  | [GLenum](#GLenum) | 是 |
| RGB32I  | [GLenum](#GLenum) | 是 |
| RGBA16I  | [GLenum](#GLenum) | 是 |
| RGB16I  | [GLenum](#GLenum) | 是 |
| RGBA8I  | [GLenum](#GLenum) | 是 |
| RGB8I  | [GLenum](#GLenum) | 是 |
| RED_INTEGER  | [GLenum](#GLenum) | 是 |
| RGB_INTEGER  | [GLenum](#GLenum) | 是 |
| RGBA_INTEGER  | [GLenum](#GLenum) | 是 |
| SAMPLER_2D_ARRAY  | [GLenum](#GLenum) | 是 |
| SAMPLER_2D_ARRAY_SHADOW  | [GLenum](#GLenum) | 是 |
| SAMPLER_CUBE_SHADOW  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_VEC2  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_VEC3  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_VEC4  | [GLenum](#GLenum) | 是 |
| INT_SAMPLER_2D  | [GLenum](#GLenum) | 是 |
| INT_SAMPLER_3D  | [GLenum](#GLenum) | 是 |
| INT_SAMPLER_CUBE  | [GLenum](#GLenum) | 是 |
| INT_SAMPLER_2D_ARRAY  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_SAMPLER_2D  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_SAMPLER_3D  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_SAMPLER_CUBE  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_SAMPLER_2D_ARRAY  | [GLenum](#GLenum) | 是 |
| DEPTH_COMPONENT32F  | [GLenum](#GLenum) | 是 |
| DEPTH32F_STENCIL8  | [GLenum](#GLenum) | 是 |
| FLOAT_32_UNSIGNED_INT_24_8_REV  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_RED_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_GREEN_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_BLUE_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_DEFAULT  | [GLenum](#GLenum) | 是 |
| UNSIGNED_INT_24_8  | [GLenum](#GLenum) | 是 |
| DEPTH24_STENCIL8  | [GLenum](#GLenum) | 是 |
| UNSIGNED_NORMALIZED  | [GLenum](#GLenum) | 是 |
| DRAW_FRAMEBUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| READ_FRAMEBUFFER  | [GLenum](#GLenum) | 是 |
| DRAW_FRAMEBUFFER  | [GLenum](#GLenum) | 是 |
| READ_FRAMEBUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| RENDERBUFFER_SAMPLES  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER  | [GLenum](#GLenum) | 是 |
| MAX_COLOR_ATTACHMENTS  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT1  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT2  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT3  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT4  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT5  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT6  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT7  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT8  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT9  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT10  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT11  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT12  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT13  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT14  | [GLenum](#GLenum) | 是 |
| COLOR_ATTACHMENT15  | [GLenum](#GLenum) | 是 |
| FRAMEBUFFER_INCOMPLETE_MULTISAMPLE  | [GLenum](#GLenum) | 是 |
| MAX_SAMPLES  | [GLenum](#GLenum) | 是 |
| HALF_FLOAT  | [GLenum](#GLenum) | 是 |
| RG  | [GLenum](#GLenum) | 是 |
| RG_INTEGER  | [GLenum](#GLenum) | 是 |
| R8  | [GLenum](#GLenum) | 是 |
| RG8  | [GLenum](#GLenum) | 是 |
| R16F  | [GLenum](#GLenum) | 是 |
| R32F  | [GLenum](#GLenum) | 是 |
| RG16F  | [GLenum](#GLenum) | 是 |
| RG32F  | [GLenum](#GLenum) | 是 |
| R8I  | [GLenum](#GLenum) | 是 |
| R8UI  | [GLenum](#GLenum) | 是 |
| R16I  | [GLenum](#GLenum) | 是 |
| R16UI  | [GLenum](#GLenum) | 是 |
| R32I  | [GLenum](#GLenum) | 是 |
| R32UI  | [GLenum](#GLenum) | 是 |
| RG8I  | [GLenum](#GLenum) | 是 |
| RG8UI  | [GLenum](#GLenum) | 是 |
| RG16I  | [GLenum](#GLenum) | 是 |
| RG16UI  | [GLenum](#GLenum) | 是 |
| RG32I  | [GLenum](#GLenum) | 是 |
| RG32UI  | [GLenum](#GLenum) | 是 |
| VERTEX_ARRAY_BINDING  | [GLenum](#GLenum) | 是 |
| R8_SNORM  | [GLenum](#GLenum) | 是 |
| RG8_SNORM  | [GLenum](#GLenum) | 是 |
| RGB8_SNORM  | [GLenum](#GLenum) | 是 |
| SIGNED_NORMALIZED  | [GLenum](#GLenum) | 是 |
| COPY_READ_BUFFER  | [GLenum](#GLenum) | 是 |
| COPY_WRITE_BUFFER  | [GLenum](#GLenum) | 是 |
| COPY_READ_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| COPY_WRITE_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| UNIFORM_BUFFER  | [GLenum](#GLenum) | 是 |
| UNIFORM_BUFFER_BINDING  | [GLenum](#GLenum) | 是 |
| UNIFORM_BUFFER_START  | [GLenum](#GLenum) | 是 |
| UNIFORM_BUFFER_SIZE  | [GLenum](#GLenum) | 是 |
| MAX_VERTEX_UNIFORM_BLOCKS  | [GLenum](#GLenum) | 是 |
| MAX_FRAGMENT_UNIFORM_BLOCKS  | [GLenum](#GLenum) | 是 |
| MAX_COMBINED_UNIFORM_BLOCKS  | [GLenum](#GLenum) | 是 |
| MAX_UNIFORM_BUFFER_BINDINGS  | [GLenum](#GLenum) | 是 |
| MAX_UNIFORM_BLOCK_SIZE  | [GLenum](#GLenum) | 是 |
| MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS  | [GLenum](#GLenum) | 是 |
| MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS  | [GLenum](#GLenum) | 是 |
| UNIFORM_BUFFER_OFFSET_ALIGNMENT  | [GLenum](#GLenum) | 是 |
| ACTIVE_UNIFORM_BLOCKS  | [GLenum](#GLenum) | 是 |
| UNIFORM_TYPE  | [GLenum](#GLenum) | 是 |
| UNIFORM_SIZE  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_INDEX  | [GLenum](#GLenum) | 是 |
| UNIFORM_OFFSET  | [GLenum](#GLenum) | 是 |
| UNIFORM_ARRAY_STRIDE  | [GLenum](#GLenum) | 是 |
| UNIFORM_MATRIX_STRIDE  | [GLenum](#GLenum) | 是 |
| UNIFORM_IS_ROW_MAJOR  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_BINDING  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_DATA_SIZE  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_ACTIVE_UNIFORMS  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER  | [GLenum](#GLenum) | 是 |
| UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER  | [GLenum](#GLenum) | 是 |
| INVALID_INDEX  | [GLenum](#GLenum) | 是 |
| MAX_VERTEX_OUTPUT_COMPONENTS  | [GLenum](#GLenum) | 是 |
| MAX_FRAGMENT_INPUT_COMPONENTS  | [GLenum](#GLenum) | 是 |
| MAX_SERVER_WAIT_TIMEOUT  | [GLenum](#GLenum) | 是 |
| OBJECT_TYPE  | [GLenum](#GLenum) | 是 |
| SYNC_CONDITION  | [GLenum](#GLenum) | 是 |
| SYNC_STATUS  | [GLenum](#GLenum) | 是 |
| SYNC_FLAGS  | [GLenum](#GLenum) | 是 |
| SYNC_FENCE  | [GLenum](#GLenum) | 是 |
| SYNC_GPU_COMMANDS_COMPLETE  | [GLenum](#GLenum) | 是 |
| UNSIGNALED  | [GLenum](#GLenum) | 是 |
| SIGNALED  | [GLenum](#GLenum) | 是 |
| ALREADY_SIGNALED  | [GLenum](#GLenum) | 是 |
| TIMEOUT_EXPIRED  | [GLenum](#GLenum) | 是 |
| CONDITION_SATISFIED  | [GLenum](#GLenum) | 是 |
| WAIT_FAILED  | [GLenum](#GLenum) | 是 |
| SYNC_FLUSH_COMMANDS_BIT  | [GLenum](#GLenum) | 是 |
| VERTEX_ATTRIB_ARRAY_DIVISOR  | [GLenum](#GLenum) | 是 |
| ANY_SAMPLES_PASSED  | [GLenum](#GLenum) | 是 |
| ANY_SAMPLES_PASSED_CONSERVATIVE  | [GLenum](#GLenum) | 是 |
| SAMPLER_BINDING  | [GLenum](#GLenum) | 是 |
| RGB10_A2UI  | [GLenum](#GLenum) | 是 |
| INT_2_10_10_10_REV  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_PAUSED  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_ACTIVE  | [GLenum](#GLenum) | 是 |
| TRANSFORM_FEEDBACK_BINDING  | [GLenum](#GLenum) | 是 |
| TEXTURE_IMMUTABLE_FORMAT  | [GLenum](#GLenum) | 是 |
| MAX_ELEMENT_INDEX  | [GLenum](#GLenum) | 是 |
| TEXTURE_IMMUTABLE_LEVELS  | [GLenum](#GLenum) | 是 |
| TIMEOUT_IGNORED | [GLenum](#GLenum) | 是 |
| MAX_CLIENT_WAIT_TIMEOUT_WEBGL  | [GLenum](#GLenum) | 是 |


### 方法

| 方法 | 返回值类型 |
| -------- | ---------- |
| copyBufferSubData(readTarget:  GLenum,  writeTarget:  GLenum,  readOffset:  GLintptr,  writeOffset:  GLintptr,  size:  GLsizeiptr) | void |
| getBufferSubData(target:  GLenum,  srcByteOffset:  GLintptr,  dstBuffer:  ArrayBufferView,  dstOffset?:  GLuint,  length?:  GLuint) | void |
| blitFramebuffer(srcX0:  GLint,  srcY0:  GLint,  srcX1:  GLint,  srcY1:  GLint,  dstX0:  GLint,  dstY0:  GLint,  dstX1:  GLint,  dstY1:  GLint,  mask:  GLbitfield,  filter:  GLenum) | void |
| framebufferTextureLayer(target:  GLenum,  attachment:  GLenum,  texture:  WebGLTexture \| null,  level:  GLint,  layer:  GLint) | void |
| invalidateFramebuffer(target:  GLenum,  attachments:  GLenum[]) | void |
| invalidateSubFramebuffer(target:  GLenum,  attachments:  GLenum[],  x:  GLint,  y:  GLint,  width:  GLsizei,  height:  GLsizei) | void |
| readBuffer(src:  GLenum) | void |
| getInternalformatParameter(target:  GLenum,  internalformat:  GLenum,  pname:  GLenum) | any |
| renderbufferStorageMultisample(target:  GLenum,  samples:  GLsizei,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei) | void |
| texStorage2D(target:  GLenum,  levels:  GLsizei,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei) | void |
| texStorage3D(target:  GLenum,  levels:  GLsizei,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei) | void |
| texImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  format:  GLenum,  type:   GLenum,  pboOffset:  GLintptr) | void |
| texImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  srcData:  ArrayBufferView \| null) | void |
| texImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  srcData:  ArrayBufferView,  srcOffset:  GLuint) | void |
| texSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  format:  GLenum,  type:  GLenum,  pboOffset:  GLintptr) | void |
| texSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  format:  GLenum,  type:  GLenum,  srcData:  ArrayBufferView \| null,  srcOffset?:  GLuint) | void |
| copyTexSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  x:  GLint,  y:  GLint,  width:  GLsizei,  height:  GLsizei) | void |
| compressedTexImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  imageSize:  GLsizei,  offset:  GLintptr) | void |
| compressedTexImage3D(target:  GLenum,  level:  GLint,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  border:  GLint,  srcData:  ArrayBufferView,  srcOffset?:  GLuint,  srcLengthOverride?:  GLuint) | void |
| compressedTexSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  format:  GLenum,  imageSize:  GLsizei,  offset:  GLintptr) | void |
| compressedTexSubImage3D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  zoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  depth:  GLsizei,  format:  GLenum,  srcData:  ArrayBufferView,  srcOffset?:  GLuint,  srcLengthOverride?:  GLuint) | void |
| getFragDataLocation(program:  WebGLProgram,  name:  string) | GLint |
| uniform1ui(location:  WebGLUniformLocation \| null,  v0:  GLuint) | void |
| uniform2ui(location:  WebGLUniformLocation \| null,  v0:  GLuint,  v1:  GLuint) | void |
| uniform3ui(location:  WebGLUniformLocation \| null,  v0:  GLuint,  v1:  GLuint,  v2:  GLuint) | void |
| uniform4ui(location:  WebGLUniformLocation \| null,  v0:  GLuint,  v1:  GLuint,  v2:  GLuint,  v3:  GLuint) | void |
| uniform1uiv(location:  WebGLUniformLocation \| null,  data:  Uint32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform2uiv(location:  WebGLUniformLocation \| null,  data:  Uint32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform3uiv(location:  WebGLUniformLocation \| null,  data:  Uint32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform4uiv(location:  WebGLUniformLocation \| null,  data:  Uint32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix3x2fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix4x2fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix2x3fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix4x3fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix2x4fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix3x4fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| vertexAttribI4i(index:  GLuint,  x:  GLint,  y:  GLint,  z:  GLint,  w:  GLint) | void |
| vertexAttribI4iv(index:  GLuint,  values:  Int32List) | void |
| vertexAttribI4ui(index:  GLuint,  x:  GLuint,  y:  GLuint,  z:  GLuint,  w:  GLuint) | void |
| vertexAttribI4uiv(index:  GLuint,  values:  Uint32List) | void |
| vertexAttribIPointer(index:  GLuint,  size:  GLint,  type:  GLenum,  stride:  GLsizei,  offset:  GLintptr) | void |
| vertexAttribDivisor(index:  GLuint,  divisor:  GLuint) | void |
| drawArraysInstanced(mode:  GLenum,  first:  GLint,  count:  GLsizei,  instanceCount:  GLsizei) | void |
| drawElementsInstanced(mode:  GLenum,  count:  GLsizei,  type:  GLenum,  offset:  GLintptr,  instanceCount:  GLsizei) | void |
| drawRangeElements(mode:  GLenum,  start:  GLuint,  end:  GLuint,  count:  GLsizei,  type:  GLenum,  offset:  GLintptr) | void |
| drawBuffers(buffers:  GLenum[]) | void |
| clearBufferfv(buffer:  GLenum,  drawbuffer:  GLint,  values:  Float32List,  srcOffset?:  GLuint) | void |
| clearBufferiv(buffer:  GLenum,  drawbuffer:  GLint,  values:  Int32List,  srcOffset?:  GLuint) | void |
| clearBufferuiv(buffer:  GLenum,  drawbuffer:  GLint,  values:  Uint32List,  srcOffset?:  GLuint) | void |
| clearBufferfi(buffer:  GLenum,  drawbuffer:  GLint,  depth:  GLfloat,  stencil:  GLint) | void |
| createQuery() | WebGLQuery \| null |
| deleteQuery(query:  WebGLQuery \| null) | void |
| isQuery(query:  WebGLQuery \| null) | GLboolean |
| beginQuery(target:  GLenum,  query:  WebGLQuery) | void |
| endQuery(target:  GLenum) | void |
| getQuery(target:  GLenum,  pname:  GLenum) | WebGLQuery \| null |
| getQueryParameter(query:  WebGLQuery,  pname:  GLenum) | any |
| createSampler() | WebGLSampler \| null |
| deleteSampler(sampler:  WebGLSampler \| null) | void |
| isSampler(sampler:  WebGLSampler \| null) | GLboolean |
| bindSampler(unit:  GLuint,  sampler:  WebGLSampler \| null) | void |
| samplerParameteri(sampler:  WebGLSampler,  pname:  GLenum,  param:  GLint) | void |
| samplerParameterf(sampler:  WebGLSampler,  pname:  GLenum,  param:  GLfloat) | void |
| getSamplerParameter(sampler:  WebGLSampler,  pname:  GLenum) | any |
| fenceSync(condition:  GLenum,  flags:  GLbitfield) | WebGLSync \| null |
| isSync(sync:  WebGLSync \| null) | GLboolean |
| deleteSync(sync:  WebGLSync \| null) | void |
| clientWaitSync(sync:  WebGLSync,  flags:  GLbitfield,  timeout:  GLuint64) | GLenum |
| waitSync(sync:  WebGLSync,  flags:  GLbitfield,  timeout:  GLint64) | void |
| getSyncParameter(sync:  WebGLSync,  pname:  GLenum) | any |
| createTransformFeedback() | WebGLTransformFeedback \| null |
| deleteTransformFeedback(tf:  WebGLTransformFeedback \| null) | void |
| isTransformFeedback(tf:  WebGLTransformFeedback \| null) | GLboolean |
| bindTransformFeedback(target:  GLenum,  tf:  WebGLTransformFeedback \| null) | void |
| beginTransformFeedback(primitiveMode:  GLenum) | void |
| endTransformFeedback() | void |
| transformFeedbackVaryings(program:  WebGLProgram,  varyings:  string[],  bufferMode:  GLenum) | void |
| getTransformFeedbackVarying(program:  WebGLProgram,  index:  GLuint) | WebGLActiveInfo \| null |
| pauseTransformFeedback() | void |
| resumeTransformFeedback() | void |
| bindBufferBase(target:  GLenum,  index:  GLuint,  buffer:  WebGLBuffer \| null) | void |
| bindBufferRange(target:  GLenum,  index:  GLuint,  buffer:  WebGLBuffer \| null,  offset:  GLintptr,  size:  GLsizeiptr) | void |
| getIndexedParameter(target:  GLenum,  index:  GLuint) | any |
| getUniformIndices(program:  WebGLProgram,  uniformNames:  string[]) | GLuint[] \| null |
| getActiveUniforms(program:  WebGLProgram,  uniformIndices:  GLuint[],  pname:  GLenum) | any |
| getUniformBlockIndex(program:  WebGLProgram,  uniformBlockName:  string) | GLuint |
| getActiveUniformBlockParameter(program:  WebGLProgram,  uniformBlockIndex:  GLuint,  pname:  GLenum) | any |
| getActiveUniformBlockName(program:  WebGLProgram,  uniformBlockIndex:  GLuint) | string \| null |
| uniformBlockBinding(program:  WebGLProgram,  uniformBlockIndex:  GLuint,  uniformBlockBinding:  GLuint) | void |
| createVertexArray() | WebGLVertexArrayObject \| null |
| deleteVertexArray(vertexArray:  WebGLVertexArrayObject \| null) | void |
| isVertexArray(vertexArray:  WebGLVertexArrayObject \| null) | GLboolean |
| bindVertexArray(array:  WebGLVertexArrayObject \| null) | void |


## webgl.WebGL2RenderingContextOverloads

WebGL2RenderingContextOverloads

| 方法 | 返回值类型 |
| -------- | ---------- |
| bufferData(target:  GLenum,  size:  GLsizeiptr,  usage:  GLenum) | void |
| bufferData(target:  GLenum,  srcData:  BufferSource \| null,  usage:  GLenum) | void |
| bufferSubData(target:  GLenum,  dstByteOffset:  GLintptr,  srcData:  BufferSource) | void |
| bufferData(target:  GLenum,  srcData:  ArrayBufferView,  usage:  GLenum,  srcOffset:  GLuint,  length?:  GLuint) | void |
| bufferSubData(target:  GLenum,  dstByteOffset:  GLintptr,  srcData:  ArrayBufferView,  srcOffset:  GLuint,  length?:  GLuint) | void |
| texImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  pixels:  ArrayBufferView \| null) | void |
| texImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  pixels:  ArrayBufferView \| null) | void |
| texSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  pboOffset:  GLintptr) | void |
| texImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLint,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  format:  GLenum,  type:  GLenum,  srcData:  ArrayBufferView,  srcOffset:  GLuint) | void |
| texSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  pboOffset:  GLintptr) | void |
| texSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  source:  TexImageSource) | void |
| texSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  srcData:  ArrayBufferView,  srcOffset:  GLuint) | void |
| compressedTexImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  imageSize:  GLsizei,  offset:  GLintptr) | void |
| compressedTexImage2D(target:  GLenum,  level:  GLint,  internalformat:  GLenum,  width:  GLsizei,  height:  GLsizei,  border:  GLint,  srcData:  ArrayBufferView,  srcOffset?:  GLuint,  srcLengthOverride?:  GLuint) | void |
| compressedTexSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  imageSize:  GLsizei,  offset:  GLintptr) | void |
| compressedTexSubImage2D(target:  GLenum,  level:  GLint,  xoffset:  GLint,  yoffset:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  srcData:  ArrayBufferView,  srcOffset?:  GLuint,  srcLengthOverride?:  GLuint) | void |
| uniform1fv(location:  WebGLUniformLocation \| null,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform2fv(location:  WebGLUniformLocation \| null,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform3fv(location:  WebGLUniformLocation \| null,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform4fv(location:  WebGLUniformLocation \| null,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform1iv(location:  WebGLUniformLocation \| null,  data:  Int32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform2iv(location:  WebGLUniformLocation \| null,  data:  Int32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform3iv(location:  WebGLUniformLocation \| null,  data:  Int32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniform4iv(location:  WebGLUniformLocation \| null,  data:  Int32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix2fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix3fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| uniformMatrix4fv(location:  WebGLUniformLocation \| null,  transpose:  GLboolean,  data:  Float32List,  srcOffset?:  GLuint,  srcLength?:  GLuint) | void |
| readPixels(x:  GLint,  y:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  dstData:  ArrayBufferView \| null) | void |
| readPixels(x:  GLint,  y:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  offset:  GLintptr) | void |
| readPixels(x:  GLint,  y:  GLint,  width:  GLsizei,  height:  GLsizei,  format:  GLenum,  type:  GLenum,  dstData:  ArrayBufferView,  dstOffset:  GLuint) | void |


## webgl.WebGLQuery

WebGLQuery


## webgl.WebGLSampler

WebGLSampler


## webgl.WebGLSync

WebGLSync


## webgl.WebGLTransformFeedback

WebGLTransformFeedback


## webgl.WebGLVertexArrayObject

WebGLVertexArrayObject