Copyright © 2006-2022 The Khronos Group Inc. All Rights Reserved.版权所有 © 2006-2022 Khronos Group Inc.版权所有。
This specification is protected by copyright laws and contains material proprietary to Khronos. Except as described by these terms, it or any components may not be reproduced, republished, distributed, transmitted, displayed, broadcast or otherwise exploited in any manner without the express prior written permission of Khronos.本规范受版权法保护,包含 Khronos 专有的资料。除本条款所述情况外,未经 Khronos 事先明确书面许可,不得以任何方式复制、再版、分发、传播、展示、广播或以其他方式利用本规范或其任何组成部分。
Khronos makes no, and expressly disclaims any, representations or warranties, express or implied, regarding this specification, including, without limitation: merchantability, fitness for a particular purpose, non-infringement of any intellectual property, correctness, accuracy, completeness, timeliness, and reliability. Under no circumstances will Khronos, or any of its Promoters, Contributors or Members, or their respective partners, officers, directors, employees, agents or representatives be liable for any damages, whether direct, indirect, special or consequential damages for lost revenues, lost profits, or otherwise, arising from or in connection with these materials.克罗诺斯不对本规范做出任何明示或暗示的陈述或保证,包括但不限于:适销性、特定用途的适用性、不侵犯任何知识产权、正确性、准确性、完整性、及时性和可靠性。在任何情况下,Khronos 或其任何推广者、贡献者或成员,或其各自的合作伙伴、管理人员、董事、雇员、代理或代表,均不对因这些材料引起的或与这些材料有关的任何损失承担责任,无论是直接、间接、特殊或后果性的损失,如收入损失、利润损失或其他损失。
Vulkan and Khronos are registered trademarks, and WebGL and EGL are trademarks of The Khronos Group Inc. ASTC is a trademark of ARM Holdings PLC; OpenCL is a trademark of Apple Inc.; and OpenGL is a registered trademark, and the OpenGL ES and OpenGL SC logos are trademarks of Hewlett Packard Enterprise, all used under license by Khronos. All other product names, trademarks, and/or company names are used solely for identification and belong to their respective owners.Vulkan 和 Khronos 是注册商标,WebGL 和 EGL 是 Khronos Group Inc.ASTC 是 ARM Holdings PLC 的商标;OpenCL 是苹果公司的商标;OpenGL 是惠普公司的注册商标,OpenGL ES 和 OpenGL SC 徽标是惠普公司的商标,均由 Khronos 许可使用。所有其他产品名称、商标和/或公司名称仅用于识别,归各自所有者所有。
3.1 Block diagram of the OpenGL ES pipeline. … 313.1 OpenGL ES 管道框图... 31
8.1 Transfer of pixel rectangles. … 1468.1 像素矩形的传输.... 146
8.2 Selecting a subimage from an image … 1528.2 从图像中选择子图像 ... 152
8.3 UNSIGNED_SHORT formats … 1548.3 UNSIGNED_SHORT 格式 ... 154
8.4 UNSIGNED_INT formats … 1558.4 UNSIGNED_INT 格式 ... 155
8.5 FLOAT_UNSIGNED_INT formats … 1558.5 FLOAT_UNSIGNED_INT 格式 ... 155
8.6 A texture image and the coordinates used to access it. … 1678.6 纹理图像及其访问坐标... 167
8.7 Example of the components returned for textureGather. … 1998.7 文本采集返回的组件示例。... 199
10.1 Vertex processing and primitive assembly. … 25610.1 顶点处理和基元装配... 256
10.2 Triangle strips, fans, and independent triangles. … 25910.2 三角形条、扇形和独立三角形。... 259
10.3 Lines with adjacency. … 26010.3 具有邻接关系的线条。... 260
10.4 Triangles with adjacency. … 26010.4 有邻接关系的三角形.... 260
10.5 Triangle strips with adjacency. … 26210.5 具有相邻关系的三角形条带.... 262
10.6 Packed component layout … 274
11.1 Domain parameterization for tessellation. … 31411.1 细分领域参数化... 314
11.2 Inner triangle tessellation. … 31811.2 内三角形细分... 318
11.3 Inner quad tessellation. … 32011.3 内部四边形细分... 320
11.4 Isoline tessellation. … 32211.4 Isoline tessellation.... 322
13.1 Rasterization … 350 13.1 光栅化 ... 350
13.2 Visualization of Bresenham’s algorithm. … 35813.2 布列瑟纳姆算法的可视化.... 358
13.3 Rasterization of wide lines. … 36013.3 宽线的光栅化 .... 360
13.4 The region used in rasterizing a multisampled line segment. … 36213.4 对多采样线段进行栅格化时使用的区域。... 362
15.1 Per-fragment operations. … 37915.1 每片段操作 .... 379
16.1 Operation of ReadPixels. … 40616.1 操作 ReadPixels.... 406
2.1 GL command suffixes … 9
2.1 GL 命令后缀 ... 9
2.2 GL data types … 11
2.2 GL 数据类型 ... 11
2.3 Summary of GL errors … 15
4.1 Initial properties of a sync object created with FenceSync. … 34
4.1 使用 FenceSync 创建的同步对象的初始属性。... 34
4.2 Asynchronous query targets … 39
4.2 异步查询目标...... 39
6.1 Buffer object binding targets. … 52
6.1 缓冲区对象绑定目标 .... 52
6.2 Buffer object parameters and their values. … 52
6.2 缓冲区对象参数及其值... 52
6.3 Buffer object initial state. … 55
6.3 缓冲区对象的初始状态 .... 55
6.4 Buffer object state set by MapBufferRange. … 58
6.4 由 MapBufferRange 设置的缓冲区对象状态。... 58
6.5 Indexed buffer object limits and binding queries … 64
7.1 CreateShader type values and the corresponding shader stages. … 68
7.1 CreateShader 类型值和相应的着色器阶段... 68
7.2 GetProgramResourceiv properties and supported interfaces … 87
7.3 OpenGL ES Shading Language type tokens … 92
7.4 Query targets for default uniform block storage, in components. … 103
7.4 默认统一块存储的查询目标(以组件为单位... 103
7.5 Query targets for combined uniform block storage, in components. … 104
7.5 以组件为单位的组合式统一块存储的查询目标... 104
7.6 GetProgramResourceiv properties used by GetActiveUniformsiv … 107
7.6 GetActiveUniformsiv 使用的 GetProgramResourceiv 属性...... 107
7.7 GetProgramResourceiv properties used by GetActiveUniform-
7.7 GetActiveUniform- 使用的 GetProgramResourceiv 属性
Blockiv. … 108
Blockiv.... 108
8.1 PixelStorei parameters … 145
8.1 PixelStorei 参数 ... 145
8.2 Valid combinations of format, type, and sized internalformat. … 148
8.2 格式、类型和有尺寸的内部格式的有效组合... 148
8.3 Valid combinations of format, type, and unsized internalformat. … 149
8.3 格式、类型和非大小内部格式的有效组合.... 149
8.4 Pixel data types. … 150
8.4 像素数据类型... 150
8.5 Pixel data formats. … 151
8.5 像素数据格式 .... 151
8.6 Packed pixel formats. … 154
8.6 打包像素格式... 154
8.7 Packed pixel field assignments … 156
8.8 Conversion from RGBA, depth, and stencil pixel components to
8.8 将 RGBA、深度和模板像素分量转换为
internal texture components. … 159
内部纹理组件。... 159
8.9 Effective internal format … 160
8.9 有效的内部格式...... 160
8.10 Sized internal color formats. … 163
8.10 大小内部颜色格式。... 163
8.11 Sized internal depth and stencil formats. … 164
8.11 大小内部深度和钢网格式。... 164
8.12 ReadPixels format and type used during CopyTex*. … 169
8.12 CopyTex* 时使用的 ReadPixels 格式和类型。... 169
8.13 Valid CopyTexImage source framebuffer/destination texture base
8.13 有效的 CopyTexImage 源帧缓冲/目标纹理基底
internal format combinations. … 170
内部格式组合。... 170
8.14 Effective internal format corresponding to floating-point framebuffers … 171
8.15 Effective internal format corresponding to destination internalfor-
8.15 与目的地内部格式相对应的有效内部格式
mat and linear source buffer component sizes. … 172
矩阵和线性源缓冲区组件大小。... 172
8.16 Effective internal format corresponding to destination internalfor-
8.16 与目的地内部格式相对应的有效内部格式
mat and sRGB source buffer component sizes. … 172
mat 和 sRGB 源缓冲区分量大小。... 172
8.17 Compressed internal formats. … 179
8.17 压缩内部格式... 179
8.18 Internal formats for buffer textures … 187
8.19 Texture parameters and their values. … 189
8.19 纹理参数及其值。... 189
8.20 Selection of cube map images. … 194
8.20 选择立方体地图图像。... 194
8.21 Texel location wrap mode application. … 198
8.21 德瑟耳位置包裹模式应用... 198
8.22 Depth texture comparison functions. … 213
8.22 深度纹理比较函数 .... 213
8.23 sRGB texture internal formats. … 214
8.23 sRGB 纹理内部格式。... 214
8.24 Layer numbers for cube map texture faces. … 216
8.24 立方体贴图纹理面的图层编号。... 216
8.25 Mapping of image load, store and atomic texel coordinate compo-
8.25 图像加载、存储和原子色元坐标组合映射
nents to texel numbers. … 217
的内容。... 217
8.26 Supported image unit formats, with equivalent format layout qual-
8.26 支持的图像单元格式及等效格式布局限定-- 8.27 支持的图像单元格式及等效格式布局限定
ifiers. … 219
ifiers。... 219
8.27 Texel sizes, compatibility classes, and pixel format/type combina-
8.27 Texel 尺寸、兼容性等级和像素格式/类型组合
tions for each image format. … 221
每种图像格式的选项。... 221
9.1 Framebuffer attachment points. … 239
9.1 帧缓冲器连接点 .... 239
10.1 Triangles generated by triangle strips with adjacency. … 263
10.1 有邻接关系的三角形条所生成的三角形.... 263
10.2 Alternative ordering to triangles generated by triangle strips with
10.2 三角形条产生的三角形的另一种排序方式,带
adjacency (see table 10.1). … 264
相邻关系(见表 10.1)。... 264
10.3 Vertex array sizes (values per vertex) and data types for generic
10.3 顶点数组大小(每个顶点的数值)和通用
vertex attributes. … 268
顶点属性。... 268
10.4 Indirect commands and corresponding indirect buffer targets. … 276
10.4 间接命令及相应的间接缓冲区目标 .... 276
11.1 Generic attribute components accessed by attribute variables. … 289
11.1 通过属性变量访问的通用属性组件.... 289
11.2 Generic attributes and vector types used by column vectors of ma-
11.2 矩阵列向量使用的通用属性和向量类型
trix variables bound to generic attribute index
i
i
i i . … 290
绑定到通用属性索引
i
i
i i 的 trix 变量。... 290
11.3 Scalar and vector vertex attribute types … 290
12.1 Transform feedback modes … 340
12.1 转换反馈模式 ... 340
12.2 Output types for OpenGL ES Shading Language variables … 342
12.2 OpenGL ES着色语言变量的输出类型... 342
12.3 Provoking vertex selection. … 345
12.3 挑动顶点选择 .... 345
14.1 Correspondence of filtered texture components to texture base
14.1 滤波纹理成分与纹理基底的对应关系
components … 374
组件 ... 374
15.1 RGB and alpha blend equations. … 387
15.1 RGB 和 Alpha 混合方程.... 387
15.2 Blending functions. … 388
15.2 混合函数... 388
15.3 Advanced Blend Equations … 391
15.3 高级混合方程...... 391
15.4 Hue-Saturation-Luminosity Advanced Blend Equations … 393
15.5 Buffer selection for a framebuffer object … 397
16.1 PixelStorei parameters. … 408
16.1 PixelStorei 参数。... 408
16.2 ReadPixels GL data types and reversed component conversion for-
16.2 读取像素的 GL 数据类型和反向分量转换
mulas. … 411
唢呐... 411
16.3 Compatible internal formats for copying … 417
16.3 兼容的内部复制格式 ... 417
16.4 Compatible internal formats for CopyImageSubData … 419
16.4 CopyImageSubData 的兼容内部格式... 419
18.1 Sources of debug output messages … 425
18.1 调试输出消息的来源 ... 425
18.2 Types of debug output messages … 426
18.3 Severity levels of messages … 426
18.3 报文的严重程度...... 426
18.4 Object namespace identifiers … 432
18.4 对象命名空间标识符...... 432
19.1 Hint targets and descriptions … 437
19.1 提示目标和说明...... 437
20.1 Internal format targets … 443
20.1 内部格式目标...... 443
21.1 State Variable Types … 447
21.1 状态变量类型... 447
21.2 Current Values and Associated Data … 448
21.2 当前值和相关数据...... 448
21.3 Vertex Array Object State … 449
21.3 顶点阵列对象状态... 449
21.4 Vertex Array Data (not in vertex array objects) … 450
21.4 顶点阵列数据(不在顶点阵列对象中)... 450
21.5 Buffer Object State … 451
21.5 缓冲对象状态...... 451
21.6 Transformation State … 452
21.7 Rasterization … 453
21.7 光栅化 ... 453
21.8 Multisampling … 454
21.8 多重取样 ... 454
21.9 Textures (selector, state per texture unit) … 455
21.9 纹理(选择器,每个纹理单元的状态)...... 455
21.10Textures (state per texture object) … 456
21.10 纹理(每个纹理对象的状态)... 456
21.11Textures (state per texture image) … 457
21.11 纹理(每个纹理图像的状态)... 457
21.12Textures (state per sampler object) … 458
21.13Pixel Operations … 459
21.13 像素操作 ... 459
21.14Framebuffer Control … 460
21.15Framebuffer (state per framebuffer object) … 461
21.15Framebuffer (每个帧缓冲器对象的状态)... 461
21.16Framebuffer (state per attachment point) … 462
21.16Framebuffer (每个连接点的状态)... 462
21.17Renderbuffer (state per renderbuffer object) … 463
21.17 渲染缓冲区(每个渲染缓冲区对象的状态)... 463
21.18Pixels … 464
21.18 像素 ... 464
21.19Shader Object State … 465
21.19 着色器对象状态 ... 465
21.20Program Pipeline Object State … 466
21.20 程序管道对象状态... 466
21.21 Program Object State … 467
21.21 程序对象状态 ... 467
21.22Program Object State (cont.) … 468
21.22 程序对象状态(续) 468
21.23Program Object State (cont.) … 469
21.23 程序对象状态(续)... 469
21.24Program Object State (cont.) … 470
21.24 程序对象状态(续)...... 470
21.25Program Object State (cont.) … 471
21.25 程序对象状态(续)...... 471
21.26Program Object State (cont.) … 472
21.26 程序对象状态(续)... 472
21.27 Program Interface State … 473
21.28Program Object Resource State … 474
21.28 程序对象资源状态...... 474
21.29Program Object Resource State (cont.) … 475
21.29 程序对象资源状态(续)...... 475
21.30Vertex Shader State (not part of program objects) … 476
21.30 顶点着色器状态(不属于程序对象)...... 476
21.31Query Object State … 477
21.31 查询对象状态 ... 477
21.32Atomic Counter Buffer Binding State … 478
21.33Image State (state per image unit) … 479
21.33 图像状态(每个图像单元的状态)...... 479
21.34Shader Storage Buffer Binding State … 480
21.34 着色器存储缓冲区绑定状态 ... 480
21.35Transform Feedback State … 481
21.35 转换反馈状态 ... 481
21.36Uniform Buffer Binding State … 482
21.36 统一缓冲区绑定状态...... 482
21.37Sync (state per sync object) … 483
21.37 同步(每个同步对象的状态)...... 483
21.38 Hints … 484
21.38 提示...... 484
21.39Compute Dispatch State … 485
21.39 计算调度状态 ... 485
21.40Implementation Dependent Values … 486
21.41Implementation Dependent Values … (cont.)
21.41 实施依赖值......(续)
†
†
† \dagger These queries return the maximum no. of samples for all internal
†
†
† \dagger 这些查询返回所有内部样本的最大数量。
formats required to support multisampled rendering.
支持多采样渲染所需的格式。
‡“ULP” means “Units in the Last Place” or “Unit of Least Precision”. … 487
‡"ULP "指 "末位单位 "或 "精度最低单位"。... 487
21.42Implementation Dependent Values (cont.) … 488
21.42 实施依赖值(续)...... 488
21.43Implementation Dependent Version and Extension Support … 489
21.44Implementation Dependent Vertex Shader Limits … 490
21.45Implementation Dependent Tessellation Shader Limits … 491
21.46Implementation Dependent Tessellation Shader Limits (cont.) … 492
21.47Implementation Dependent Geometry Shader Limits … 493
21.48Implementation Dependent Fragment Shader Limits . … 494
21.48 与实施相关的片段着色器限制 .... 494
21.49Implementation Dependent Compute Shader Limits … 495
21.50Implementation Dependent Aggregate Shader Limits … 496
21.51 Implementation Dependent Aggregate Shader Limits (cont.) … 497
21.52 Implementation Dependent Aggregate Shader Limits (cont.) … 498
21.53Debug Output State … 499
21.53 调试输出状态 ... 499
21.54Implementation Dependent Debug Output State … 500
21.54 实施取决于调试输出状态 ... 500
21.55Implementation Dependent Transform Feedback Limits … 501
21.55 实施取决于变换反馈限制..............501
21.56Framebuffer Dependent Values … 502
21.57Miscellaneous … 503
21.57 杂项 ... 503
C. 1 Mapping of OpenGL ES ASTC formats to descriptions. … 514
C.1 OpenGL ES ASTC 格式与描述的映射。... 514
C. 2 Mapping of OpenGL ES ETC formats to descriptions. … 515
C.2 OpenGL ES ETC 格式与描述的映射。... 515