--- title: WebGLRenderingContext.validateProgram() slug: Web/API/WebGLRenderingContext/validateProgram tags: - API - Reference - WebGL - WebGLRenderingContext translation_of: Web/API/WebGLRenderingContext/validateProgram ---
{{APIRef("WebGL")}}

WebGLRenderingContext.validateProgram() 是一种 WebGL API ,主要是用来验证 {{domxref("WebGLProgram")}}。 它在检查 WebGLProgram 程序是否链接成功的同时还会检查其是否能在当前的 WebGL 中使用。

语法

void gl.validateProgram(program);

参数

program
待验证的 {{domxref("WebGLProgram")}}。

返回值

None.

Examples

var program = gl.createProgram();

// Attach pre-existing shaders
gl.attachShader(program, vertexShader);
gl.attachShader(program, fragmentShader);

gl.linkProgram(program);
gl.validateProgram(program);

if ( !gl.getProgramParameter( program, gl.LINK_STATUS) ) {
  var info = gl.getProgramInfoLog(program);
  throw '不能编译 WebGL 程序. \n\n' + info;
}

gl.useProgram(program);

规范

Specification Status Comment
{{SpecName('WebGL', "#5.14.9", "validateProgram")}} {{Spec2('WebGL')}} 初次定义.
{{SpecName('OpenGL ES 2.0', "glValidateProgram.xml", "glValidateProgram")}} {{Spec2('OpenGL ES 2.0')}} OpenGL API 的帮助页中.

浏览器兼容性

{{Compat("api.WebGLRenderingContext.validateProgram")}}

See also