WebGLRenderingContext: getParameter() 方法
注意:此功能在 Web Workers 中可用。
WebGL API 的 WebGLRenderingContext.getParameter() 方法返回所传参数名称的值。
语法
js
getParameter(pname)
参数
返回值
取决于参数。
参数名称
WebGL 1
在使用 WebGLRenderingContext 时,可以查询以下 pname 参数。
| 常量 | 返回类型 | 描述 | 
|---|---|---|
| gl.ACTIVE_TEXTURE | GLenum | |
| gl.ALIASED_LINE_WIDTH_RANGE | Float32Array(包含 2 个元素) | |
| gl.ALIASED_POINT_SIZE_RANGE | Float32Array(包含 2 个元素) | |
| gl.ALPHA_BITS | GLint | |
| gl.ARRAY_BUFFER_BINDING | WebGLBuffer | |
| gl.BLEND | GLboolean | |
| gl.BLEND_COLOR | Float32Array(包含 4 个值) | |
| gl.BLEND_DST_ALPHA | GLenum | |
| gl.BLEND_DST_RGB | GLenum | |
| gl.BLEND_EQUATION | GLenum | |
| gl.BLEND_EQUATION_ALPHA | GLenum | |
| gl.BLEND_EQUATION_RGB | GLenum | |
| gl.BLEND_SRC_ALPHA | GLenum | |
| gl.BLEND_SRC_RGB | GLenum | |
| gl.BLUE_BITS | GLint | |
| gl.COLOR_CLEAR_VALUE | Float32Array(包含 4 个值) | |
| gl.COLOR_WRITEMASK | sequence<GLboolean>(包含 4 个值) | |
| gl.COMPRESSED_TEXTURE_FORMATS | Uint32Array | 返回压缩纹理格式。 使用 WEBGL_compressed_texture_s3tc扩展时
 使用  
 WEBGL_compressed_texture_etc扩展时
 WEBGL_compressed_texture_pvrtc扩展时
 WEBGL_compressed_texture_etc1扩展时
 WEBGL_compressed_texture_astc扩展时
 | 
| gl.CULL_FACE | GLboolean | |
| gl.CULL_FACE_MODE | GLenum | gl.FRONT、gl.BACK或gl.FRONT_AND_BACK。另请参见cullFace | 
| gl.CURRENT_PROGRAM | WebGLProgram或null | 请参见 useProgram。 | 
| gl.DEPTH_BITS | GLint | |
| gl.DEPTH_CLEAR_VALUE | GLfloat | |
| gl.DEPTH_FUNC | GLenum | |
| gl.DEPTH_RANGE | Float32Array(包含 2 个元素) | |
| gl.DEPTH_TEST | GLboolean | |
| gl.DEPTH_WRITEMASK | GLboolean | |
| gl.DITHER | GLboolean | |
| gl.ELEMENT_ARRAY_BUFFER_BINDING | WebGLBuffer | |
| gl.FRAMEBUFFER_BINDING | WebGLFramebuffer或null | null对应于绑定到默认帧缓冲区。另请参见bindFramebuffer。 | 
| gl.FRONT_FACE | GLenum | gl.CW或gl.CCW。另请参见frontFace。 | 
| gl.GENERATE_MIPMAP_HINT | GLenum | gl.FASTEST、gl.NICEST或gl.DONT_CARE。另请参见hint。 | 
| gl.GREEN_BITS | GLint | |
| gl.IMPLEMENTATION_COLOR_READ_FORMAT | GLenum | |
| gl.IMPLEMENTATION_COLOR_READ_TYPE | GLenum | |
| gl.LINE_WIDTH | GLfloat | |
| gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS | GLint | |
| gl.MAX_CUBE_MAP_TEXTURE_SIZE | GLint | |
| gl.MAX_FRAGMENT_UNIFORM_VECTORS | GLint | |
| gl.MAX_RENDERBUFFER_SIZE | GLint | |
| gl.MAX_TEXTURE_IMAGE_UNITS | GLint | |
| gl.MAX_TEXTURE_SIZE | GLint | |
| gl.MAX_VARYING_VECTORS | GLint | |
| gl.MAX_VERTEX_ATTRIBS | GLint | |
| gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS | GLint | |
| gl.MAX_VERTEX_UNIFORM_VECTORS | GLint | |
| gl.MAX_VIEWPORT_DIMS | Int32Array(包含 2 个元素) | |
| gl.PACK_ALIGNMENT | GLint | |
| gl.POLYGON_OFFSET_FACTOR | GLfloat | |
| gl.POLYGON_OFFSET_FILL | GLboolean | |
| gl.POLYGON_OFFSET_UNITS | GLfloat | |
| gl.RED_BITS | GLint | |
| gl.RENDERBUFFER_BINDING | WebGLRenderbuffer或null | 请参见 bindRenderbuffer。 | 
| gl.RENDERER | string | |
| gl.SAMPLE_BUFFERS | GLint | |
| gl.SAMPLE_COVERAGE_INVERT | GLboolean | |
| gl.SAMPLE_COVERAGE_VALUE | GLfloat | |
| gl.SAMPLES | GLint | |
| gl.SCISSOR_BOX | Int32Array(包含 4 个元素) | |
| gl.SCISSOR_TEST | GLboolean | |
| gl.SHADING_LANGUAGE_VERSION | string | |
| gl.STENCIL_BACK_FAIL | GLenum | |
| gl.STENCIL_BACK_FUNC | GLenum | |
| gl.STENCIL_BACK_PASS_DEPTH_FAIL | GLenum | |
| gl.STENCIL_BACK_PASS_DEPTH_PASS | GLenum | |
| gl.STENCIL_BACK_REF | GLint | |
| gl.STENCIL_BACK_VALUE_MASK | GLuint | |
| gl.STENCIL_BACK_WRITEMASK | GLuint | |
| gl.STENCIL_BITS | GLint | |
| gl.STENCIL_CLEAR_VALUE | GLint | |
| gl.STENCIL_FAIL | GLenum | |
| gl.STENCIL_FUNC | GLenum | |
| gl.STENCIL_PASS_DEPTH_FAIL | GLenum | |
| gl.STENCIL_PASS_DEPTH_PASS | GLenum | |
| gl.STENCIL_REF | GLint | |
| gl.STENCIL_TEST | GLboolean | |
| gl.STENCIL_VALUE_MASK | GLuint | |
| gl.STENCIL_WRITEMASK | GLuint | |
| gl.SUBPIXEL_BITS | GLint | |
| gl.TEXTURE_BINDING_2D | WebGLTexture或null | |
| gl.TEXTURE_BINDING_CUBE_MAP | WebGLTexture或null | |
| gl.UNPACK_ALIGNMENT | GLint | |
| gl.UNPACK_COLORSPACE_CONVERSION_WEBGL | GLenum | |
| gl.UNPACK_FLIP_Y_WEBGL | GLboolean | |
| gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL | GLboolean | |
| gl.VENDOR | string | |
| gl.VERSION | string | |
| gl.VIEWPORT | Int32Array(包含 4 个元素) | 
WebGL 2
在使用 WebGL2RenderingContext 时,可以查询以下 pname 参数。
| 常量 | 返回类型 | 描述 | 
|---|---|---|
| gl.COPY_READ_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.COPY_WRITE_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.DRAW_BUFFERi | GLenum | gl.BACK、gl.NONE或gl.COLOR_ATTACHMENT{0-15}。另请参见drawBuffers。 | 
| gl.DRAW_FRAMEBUFFER_BINDING | WebGLFramebuffer或null | null对应于绑定到默认帧缓冲区。另请参见bindFramebuffer。 | 
| gl.FRAGMENT_SHADER_DERIVATIVE_HINT | GLenum | gl.FASTEST、gl.NICEST或gl.DONT_CARE。另请参见hint。 | 
| gl.MAX_3D_TEXTURE_SIZE | GLint | |
| gl.MAX_ARRAY_TEXTURE_LAYERS | GLint | |
| gl.MAX_CLIENT_WAIT_TIMEOUT_WEBGL | GLint64 | |
| gl.MAX_COLOR_ATTACHMENTS | GLint | |
| gl.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS | GLint64 | |
| gl.MAX_COMBINED_UNIFORM_BLOCKS | GLint | |
| gl.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS | GLint64 | |
| gl.MAX_DRAW_BUFFERS | GLint | |
| gl.MAX_ELEMENT_INDEX | GLint64 | |
| gl.MAX_ELEMENTS_INDICES | GLint | |
| gl.MAX_ELEMENTS_VERTICES | GLint | |
| gl.MAX_FRAGMENT_INPUT_COMPONENTS | GLint | |
| gl.MAX_FRAGMENT_UNIFORM_BLOCKS | GLint | |
| gl.MAX_FRAGMENT_UNIFORM_COMPONENTS | GLint | |
| gl.MAX_PROGRAM_TEXEL_OFFSET | GLint | |
| gl.MAX_SAMPLES | GLint | |
| gl.MAX_SERVER_WAIT_TIMEOUT | GLint64 | |
| gl.MAX_TEXTURE_LOD_BIAS | GLfloat | |
| gl.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS | GLint | |
| gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS | GLint | |
| gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS | GLint | |
| gl.MAX_UNIFORM_BLOCK_SIZE | GLint64 | |
| gl.MAX_UNIFORM_BUFFER_BINDINGS | GLint | |
| gl.MAX_VARYING_COMPONENTS | GLint | |
| gl.MAX_VERTEX_OUTPUT_COMPONENTS | GLint | |
| gl.MAX_VERTEX_UNIFORM_BLOCKS | GLint | |
| gl.MAX_VERTEX_UNIFORM_COMPONENTS | GLint | |
| gl.MIN_PROGRAM_TEXEL_OFFSET | GLint | |
| gl.PACK_ROW_LENGTH | GLint | 请参见 pixelStorei。 | 
| gl.PACK_SKIP_PIXELS | GLint | 请参见 pixelStorei。 | 
| gl.PACK_SKIP_ROWS | GLint | 请参见 pixelStorei。 | 
| gl.PIXEL_PACK_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.PIXEL_UNPACK_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.RASTERIZER_DISCARD | GLboolean | |
| gl.READ_BUFFER | GLenum | |
| gl.READ_FRAMEBUFFER_BINDING | WebGLFramebuffer或null | null对应于绑定到默认帧缓冲区。另请参见bindFramebuffer。 | 
| gl.SAMPLE_ALPHA_TO_COVERAGE | GLboolean | |
| gl.SAMPLE_COVERAGE | GLboolean | |
| gl.SAMPLER_BINDING | WebGLSampler或null | 请参见 bindSampler。 | 
| gl.TEXTURE_BINDING_2D_ARRAY | WebGLTexture或null | 请参见 bindTexture。 | 
| gl.TEXTURE_BINDING_3D | WebGLTexture或null | 请参见 bindTexture。 | 
| gl.TRANSFORM_FEEDBACK_ACTIVE | GLboolean | |
| gl.TRANSFORM_FEEDBACK_BINDING | WebGLTransformFeedback或null | 请参见 bindTransformFeedback。 | 
| gl.TRANSFORM_FEEDBACK_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.TRANSFORM_FEEDBACK_PAUSED | GLboolean | |
| gl.UNIFORM_BUFFER_BINDING | WebGLBuffer或null | 请参见 bindBuffer。 | 
| gl.UNIFORM_BUFFER_OFFSET_ALIGNMENT | GLint | 请参见 pixelStorei。 | 
| gl.UNPACK_IMAGE_HEIGHT | GLint | 请参见 pixelStorei。 | 
| gl.UNPACK_ROW_LENGTH | GLint | 请参见 pixelStorei。 | 
| gl.UNPACK_SKIP_IMAGES | GLint | 请参见 pixelStorei。 | 
| gl.UNPACK_SKIP_PIXELS | GLint | 请参见 pixelStorei。 | 
| gl.UNPACK_SKIP_ROWS | GLint | 请参见 pixelStorei。 | 
| gl.VERTEX_ARRAY_BINDING | WebGLVertexArrayObject或null | 请参见 bindVertexArray。 | 
WebGL 扩展
使用 WebGL 扩展时,可以查询以下 pname 参数
| 常量 | 返回类型 | 扩展名 | 描述 | 
|---|---|---|---|
| ext.MAX_TEXTURE_MAX_ANISOTROPY_EXT | GLfloat | EXT_texture_filter_anisotropic | 可用的最大各向异性。 | 
| ext.FRAGMENT_SHADER_DERIVATIVE_HINT_OES | GLenum | OES_standard_derivatives | GLSL 内置函数 dFdx、dFdy和fwidth的导数计算精度。 | 
| ext.MAX_COLOR_ATTACHMENTS_WEBGL | GLint | WEBGL_draw_buffers | 帧缓冲区颜色附件点的最大数量。 | 
| ext.MAX_DRAW_BUFFERS_WEBGL | GLint | WEBGL_draw_buffers | 绘图缓冲区的最大数量。 | 
| ext.DRAW_BUFFER0_WEBGL | GLenum | WEBGL_draw_buffers | 绘图缓冲区。 | 
| ext.VERTEX_ARRAY_BINDING_OES | WebGLVertexArrayObjectOES | OES_vertex_array_object | 绑定的顶点数组对象 (VAO)。 | 
| ext.TIMESTAMP_EXT | GLuint64EXT | EXT_disjoint_timer_query | 当前时间。 | 
| ext.GPU_DISJOINT_EXT | GLboolean | EXT_disjoint_timer_query | 返回 GPU 是否执行了任何不连续操作。 | 
| ext.MAX_VIEWS_OVR | GLint | OVR_multiview2 | 最大视图数。 | 
示例
js
gl.getParameter(gl.DITHER);
gl.getParameter(gl.VERSION);
gl.getParameter(gl.VIEWPORT);
规范
| 规范 | 
|---|
| WebGL 规范 # 5.14.3 | 
| WebGL 2.0 规范 # 3.7.2 | 
浏览器兼容性
加载中…