WEBGL_debug_shaders:getTranslatedShaderSource() 方法
WEBGL_debug_shaders.getTranslatedShaderSource() 方法是 WebGL API 的一部分,允许您调试已翻译的着色器。
语法
js
getTranslatedShaderSource(shader)
参数
shader-
要从中获取已翻译源代码的
WebGLShader。
返回值
包含已翻译着色器源代码的 String。如果以下情况之一发生,则返回空字符串:
- 尚未定义源代码;
WebGLRenderingContext.compileShader()尚未被调用;- 着色器的翻译失败。
示例
js
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const shader = gl.createShader(gl.FRAGMENT_SHADER);
gl.shaderSource(
shader,
"void main() { gl_FragColor = vec4(gl_FragCoord.x, 0.0, 0.0, 1.0); }",
);
gl.compileShader(shader);
const src = gl
.getExtension("WEBGL_debug_shaders")
.getTranslatedShaderSource(shader);
console.log(src);
// "void main(){
// (gl_FragColor = vec4(gl_FragCoord.x, 0.0, 0.0, 1.0));
// }"
规范
| 规范 |
|---|
| WebGL WEBGL_debug_shaders Khronos 批准的扩展规范 |
浏览器兼容性
加载中…