「ガベージ」シェーダーをコンパイルして、ガベージコードをWebGLにフィードしようとしています(フィドルについては、ここを参照してください)。
gl = $('canvas')[0].getContext('experimental-webgl');
source = 'garbage12398sv;aa[]|\[12';
shader = gl.createShader(gl.FRAGMENT_SHADER);
gl.shaderSource(shader, source);
gl.compileShader(shader);
console.log(gl.getError() === gl.NO_ERROR);
驚いたことに、WebGLにガベージをコンパイルするように要求しているにもかかわらずですgl.getError() === gl.NO_ERROR
。true
getError
エラーにフラグを立てないのはなぜですか?シェーダーのコンパイルステータスに関するエラー情報を取得するにはどうすればよいですか?