WEBGL_debug_shaders: getTranslatedShaderSource() Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.
Die WEBGL_debug_shaders.getTranslatedShaderSource()
Methode ist Teil der WebGL-API und ermöglicht Ihnen das Debuggen eines übersetzten Shaders.
Syntax
js
getTranslatedShaderSource(shader)
Parameter
shader
-
Ein
WebGLShader
, von dem der übersetzte Quellcode abgerufen werden soll.
Rückgabewert
Ein String
, der den übersetzten Shader-Quellcode enthält. Ein leerer String wird zurückgegeben, wenn:
- kein Quellcode definiert wurde oder,
WebGLRenderingContext.compileShader()
noch nicht aufgerufen wurde oder,- die Übersetzung für den Shader fehlgeschlagen ist.
Beispiele
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));
// }"
Spezifikationen
Specification |
---|
WebGL WEBGL_debug_shaders Khronos Ratified Extension Specification |
Browser-Kompatibilität
BCD tables only load in the browser