WebGLRenderingContext.getParameter() - Web API 接口参考 编辑

WebGL APIWebGLRenderingContext.getParameter() 方法为传入的参数名称返回一个值。

语法

any gl.getParameter(pname);

参数

pname
一个指定要返回哪个参数值的 GLenum。请参阅下文的可能值。

返回值

取决于参数。

参数名称

WebGL 1

使用 WebGLRenderingContext 时,您可以查询以下 pname 参数。

常量返回类型描述
gl.ACTIVE_TEXTUREGLenum 
gl.ALIASED_LINE_WIDTH_RANGEFloat32Array (with 2 elements) 
gl.ALIASED_POINT_SIZE_RANGEFloat32Array (with 2 elements) 
gl.ALPHA_BITSGLint 
gl.ARRAY_BUFFER_BINDINGWebGLBuffer 
gl.BLENDGLboolean 
gl.BLEND_COLORFloat32Array (with 4 values) 
gl.BLEND_DST_ALPHAGLenum 
gl.BLEND_DST_RGBGLenum 
gl.BLEND_EQUATIONGLenum 
gl.BLEND_EQUATION_ALPHAGLenum 
gl.BLEND_EQUATION_RGBGLenum 
gl.BLEND_SRC_ALPHAGLenum 
gl.BLEND_SRC_RGBGLenum 
gl.BLUE_BITSGLint 
gl.COLOR_CLEAR_VALUEFloat32Array (with 4 values) 
gl.COLOR_WRITEMASKsequence<GLboolean> (with 4 values) 
gl.COMPRESSED_TEXTURE_FORMATSUint32Array返回压缩的纹理格式。

当使用 WEBGL_compressed_texture_s3tc 扩展时:
  • ext.COMPRESSED_RGB_S3TC_DXT1_EXT
  • ext.COMPRESSED_RGBA_S3TC_DXT1_EXT
  • ext.COMPRESSED_RGBA_S3TC_DXT3_EXT
  • ext.COMPRESSED_RGBA_S3TC_DXT5_EXT

当使用 WEBGL_compressed_texture_s3tc_srgb 扩展时:

  • ext.COMPRESSED_SRGB_S3TC_DXT1_EXT
  • ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT
  • ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT
  • ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT
当使用 WEBGL_compressed_texture_es3 扩展时:
  • ext.COMPRESSED_R11_EAC
  • ext.COMPRESSED_SIGNED_R11_EAC
  • ext.COMPRESSED_RG11_EAC
  • ext.COMPRESSED_SIGNED_RG11_EAC
  • ext.COMPRESSED_RGB8_ETC2
  • ext.COMPRESSED_RGBA8_ETC2_EAC
  • ext.COMPRESSED_SRGB8_ETC2
  • ext.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC
  • ext.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
  • ext.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2
当使用 WEBGL_compressed_texture_pvrtc 扩展时:
  • ext.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
  • ext.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
  • ext.COMPRESSED_RGB_PVRTC_2BPPV1_IMG
  • ext.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG
当使用 WEBGL_compressed_texture_etc1 扩展时:
  • ext.COMPRESSED_RGB_ETC1_WEBGL
当使用 WEBGL_compressed_texture_atc 扩展时:
  • ext.COMPRESSED_RGB_ATC_WEBGL
  • ext.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL
  • ext.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
当使用 WEBGL_compressed_texture_astc 扩展时:
  • ext.COMPRESSED_RGBA_ASTC_4x4_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR
  • ext.COMPRESSED_RGBA_ASTC_5x4_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR
  • ext.COMPRESSED_RGBA_ASTC_5x5_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR
  • ext.COMPRESSED_RGBA_ASTC_6x5_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR
  • ext.COMPRESSED_RGBA_ASTC_6x6_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR
  • ext.COMPRESSED_RGBA_ASTC_8x5_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR
  • ext.COMPRESSED_RGBA_ASTC_8x6_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR
  • ext.COMPRESSED_RGBA_ASTC_8x8_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR
  • ext.COMPRESSED_RGBA_ASTC_10x5_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR
  • ext.COMPRESSED_RGBA_ASTC_10x6_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR
  • ext.COMPRESSED_RGBA_ASTC_10x6_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR
  • ext.COMPRESSED_RGBA_ASTC_10x10_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR
  • ext.COMPRESSED_RGBA_ASTC_12x10_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR
  • ext.COMPRESSED_RGBA_ASTC_12x12_KHR
    ext.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR
gl.CULL_FACEGLboolean 
gl.CULL_FACE_MODEGLenum 
gl.CURRENT_PROGRAMWebGLProgram 
gl.DEPTH_BITSGLint 
gl.DEPTH_CLEAR_VALUEGLfloat 
gl.DEPTH_FUNCGLenum 
gl.DEPTH_RANGEFloat32Array (with 2 elements) 
gl.DEPTH_TESTGLboolean 
gl.DEPTH_WRITEMASKGLboolean 
gl.DITHERGLboolean 
gl.ELEMENT_ARRAY_BUFFER_BINDINGWebGLBuffer 
gl.FRAMEBUFFER_BINDINGWebGLFramebuffer 
gl.FRONT_FACEGLenum 
gl.GENERATE_MIPMAP_HINTGLenum 
gl.GREEN_BITSGLint 
gl.IMPLEMENTATION_COLOR_READ_FORMATGLenum 
gl.IMPLEMENTATION_COLOR_READ_TYPEGLenum 
gl.LINE_WIDTHGLfloat 
gl.MAX_COMBINED_TEXTURE_IMAGE_UNITSGLint 
gl.MAX_CUBE_MAP_TEXTURE_SIZEGLint 
gl.MAX_FRAGMENT_UNIFORM_VECTORSGLint 
gl.MAX_RENDERBUFFER_SIZEGLint 
gl.MAX_TEXTURE_IMAGE_UNITSGLint 
gl.MAX_TEXTURE_SIZEGLint 
gl.MAX_VARYING_VECTORSGLint 
gl.MAX_VERTEX_ATTRIBSGLint 
gl.MAX_VERTEX_TEXTURE_IMAGE_UNITSGLint 
gl.MAX_VERTEX_UNIFORM_VECTORSGLint 
gl.MAX_VIEWPORT_DIMSInt32Array (with 2 elements) 
gl.PACK_ALIGNMENTGLint 
gl.POLYGON_OFFSET_FACTORGLfloat 
gl.POLYGON_OFFSET_FILLGLboolean 
gl.POLYGON_OFFSET_UNITSGLfloat 
gl.RED_BITSGLint 
gl.RENDERBUFFER_BINDINGWebGLRenderbuffer 
gl.RENDERERDOMString 
gl.SAMPLE_BUFFERSGLint 
gl.SAMPLE_COVERAGE_INVERTGLboolean 
gl.SAMPLE_COVERAGE_VALUEGLfloat 
gl.SAMPLESGLint 
gl.SCISSOR_BOXInt32Array (with 4 elements) 
gl.SCISSOR_TESTGLboolean 
gl.SHADING_LANGUAGE_VERSIONDOMString 
gl.STENCIL_BACK_FAILGLenum 
gl.STENCIL_BACK_FUNCGLenum 
gl.STENCIL_BACK_PASS_DEPTH_FAILGLenum 
gl.STENCIL_BACK_PASS_DEPTH_PASSGLenum 
gl.STENCIL_BACK_REFGLint 
gl.STENCIL_BACK_VALUE_MASKGLuint 
gl.STENCIL_BACK_WRITEMASKGLuint 
gl.STENCIL_BITSGLint 
gl.STENCIL_CLEAR_VALUEGLint 
gl.STENCIL_FAILGLenum 
gl.STENCIL_FUNCGLenum 
gl.STENCIL_PASS_DEPTH_FAILGLenum 
gl.STENCIL_PASS_DEPTH_PASSGLenum 
gl.STENCIL_REFGLint 
gl.STENCIL_TESTGLboolean 
gl.STENCIL_VALUE_MASKGLuint 
gl.STENCIL_WRITEMASKGLuint 
gl.SUBPIXEL_BITSGLint 
gl.TEXTURE_BINDING_2DWebGLTexture 
gl.TEXTURE_BINDING_CUBE_MAPWebGLTexture 
gl.UNPACK_ALIGNMENTGLint 
gl.UNPACK_COLORSPACE_CONVERSION_WEBGLGLenum 
gl.UNPACK_FLIP_Y_WEBGLGLboolean 
gl.UNPACK_PREMULTIPLY_ALPHA_WEBGLGLboolean 
gl.VENDORDOMString 
gl.VERSIONDOMString 
gl.VIEWPORTInt32Array (with 4 elements) 

WebGL 2

使用 WebGL2RenderingContext 时,您可以查询以下 pname 参数。

常量返回类型描述
gl.COPY_READ_BUFFER_BINDINGWebGLBuffer 
gl.COPY_WRITE_BUFFER_BINDINGWebGLBuffer 
gl.DRAW_BUFFERiGLenum 
gl.DRAW_FRAMEBUFFER_BINDINGWebGLFramebuffer 
gl.FRAGMENT_SHADER_DERIVATIVE_HINTGLenum 
gl.MAX_3D_TEXTURE_SIZEGLint 
gl.MAX_ARRAY_TEXTURE_LAYERSGLint 
gl.MAX_CLIENT_WAIT_TIMEOUT_WEBGLGLint64 
gl.MAX_COLOR_ATTACHMENTSGLint 
gl.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTSGLint64 
gl.MAX_COMBINED_UNIFORM_BLOCKSGLint 
gl.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTSGLint64 
gl.MAX_DRAW_BUFFERSGLint 
gl.MAX_ELEMENT_INDEXGLint64 
gl.MAX_ELEMENTS_INDICESGLint 
gl.MAX_ELEMENTS_VERTICESGLint 
gl.MAX_FRAGMENT_INPUT_COMPONENTSGLint 
gl.MAX_FRAGMENT_UNIFORM_BLOCKSGLint 
gl.MAX_FRAGMENT_UNIFORM_COMPONENTSGLint 
gl.MAX_PROGRAM_TEXEL_OFFSETGLint 
gl.MAX_SAMPLESGLint 
gl.MAX_SERVER_WAIT_TIMEOUTGLint64 
gl.MAX_TEXTURE_LOD_BIASGLfloat 
gl.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTSGLint 
gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBSGLint 
gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTSGLint 
gl.MAX_UNIFORM_BLOCK_SIZEGLint64 
gl.MAX_UNIFORM_BUFFER_BINDINGSGLint 
gl.MAX_VARYING_COMPONENTSGLint 
gl.MAX_VERTEX_OUTPUT_COMPONENTSGLint 
gl.MAX_VERTEX_UNIFORM_BLOCKSGLint 
gl.MAX_VERTEX_UNIFORM_COMPONENTSGLint 
gl.MIN_PROGRAM_TEXEL_OFFSETGLint 
gl.PACK_ROW_LENGTHGLint 
gl.PACK_SKIP_PIXELSGLint 
gl.PACK_SKIP_ROWSGLint 
gl.PIXEL_PACK_BUFFER_BINDINGWebGLBuffer 
gl.PIXEL_UNPACK_BUFFER_BINDINGWebGLBuffer 
gl.RASTERIZER_DISCARDGLboolean 
gl.READ_BUFFERGLenum 
gl.READ_FRAMEBUFFER_BINDINGWebGLFramebuffer 
gl.SAMPLE_ALPHA_TO_COVERAGEGLboolean 
gl.SAMPLE_COVERAGEGLboolean 
gl.SAMPLER_BINDINGWebGLSampler 
gl.TEXTURE_BINDING_2D_ARRAYWebGLTexture 
gl.TEXTURE_BINDING_3DWebGLTexture 
gl.TRANSFORM_FEEDBACK_ACTIVEGLboolean 
gl.TRANSFORM_FEEDBACK_BINDINGWebGLTransformFeedback 
gl.TRANSFORM_FEEDBACK_BUFFER_BINDINGWebGLBuffer 
gl.TRANSFORM_FEEDBACK_PAUSEDGLboolean 
gl.UNIFORM_BUFFER_BINDINGWebGLBuffer 
gl.UNIFORM_BUFFER_OFFSET_ALIGNMENTGLint 
gl.UNPACK_IMAGE_HEIGHTGLint 
gl.UNPACK_ROW_LENGTHGLint 
gl.UNPACK_SKIP_IMAGESGLint 
gl.UNPACK_SKIP_PIXELSGLint 
gl.UNPACK_SKIP_ROWSGLint 
gl.VERTEX_ARRAY_BINDINGWebGLVertexArrayObject 

WebGL 扩展

当使用 WebGL 扩展 时,您可以查询以下 pname 参数:

常量返回类型扩展描述
ext.MAX_TEXTURE_MAX_ANISOTROPY_EXTGLfloatEXT_texture_filter_anisotropic最大可用各向异性。
ext.FRAGMENT_SHADER_DERIVATIVE_HINT_OESGLenumOES_standard_derivativesGLSL 内置函数的导数计算精度:dFdx、 dFdy 和 fwidth
ext.MAX_COLOR_ATTACHMENTS_WEBGLGLintWEBGL_draw_buffers帧缓冲区颜色附着点的最大数量。
ext.MAX_DRAW_BUFFERS_WEBGLGLintWEBGL_draw_buffers绘图缓冲区的最大数量。
ext.DRAW_BUFFER0_WEBGL
ext.DRAW_BUFFER1_WEBGL
ext.DRAW_BUFFER2_WEBGL
ext.DRAW_BUFFER3_WEBGL
ext.DRAW_BUFFER4_WEBGL
ext.DRAW_BUFFER5_WEBGL
ext.DRAW_BUFFER6_WEBGL
ext.DRAW_BUFFER7_WEBGL
ext.DRAW_BUFFER8_WEBGL
ext.DRAW_BUFFER9_WEBGL
ext.DRAW_BUFFER10_WEBGL
ext.DRAW_BUFFER11_WEBGL
ext.DRAW_BUFFER12_WEBGL
ext.DRAW_BUFFER13_WEBGL
ext.DRAW_BUFFER14_WEBGL
ext.DRAW_BUFFER15_WEBGL
GLenumWEBGL_draw_buffers绘图缓冲区。
ext.VERTEX_ARRAY_BINDING_OESWebGLVertexArrayObjectOESOES_vertex_array_object绑定的顶点数组对象(VAO)。
ext.TIMESTAMP_EXTGLuint64EXT

EXT_disjoint_timer_query

当前时间。
ext.GPU_DISJOINT_EXTGLbooleanEXT_disjoint_timer_query

返回 GPU 是否执行了任何不相交的操作。

示例

gl.getParameter(gl.DITHER);
gl.getParameter(gl.VERSION);
gl.getParameter(gl.VIEWPORT);

规范

规范状态注释
WebGL 1.0
getParameter
Recommendation初始定义。
WebGL 2.0
getParameter
Editor's Draft添加额外的参数名称。
OpenGL ES 2.0
glGet
Standard(类似的)OpenGL API的手册页。

浏览器兼容性

BCD tables only load in the browser

另请参阅

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:140 次

字数:35875

最后编辑:7年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文