diff options
author | Imanol Fernandez <mortimergoro@gmail.com> | 2016-10-03 16:15:37 +0200 |
---|---|---|
committer | Imanol Fernandez <mortimergoro@gmail.com> | 2016-10-03 16:17:19 +0200 |
commit | 328dacee8b9abaee40909d11f6c4cf97ecce3870 (patch) | |
tree | 14eed013e94123c1cd26747f27c04ca61b7cf6c0 /tests/html/test_webgl_triangle.html | |
parent | a07d6b37cc9baf0896e4a6721da535fbcea4a186 (diff) | |
download | servo-328dacee8b9abaee40909d11f6c4cf97ecce3870.tar.gz servo-328dacee8b9abaee40909d11f6c4cf97ecce3870.zip |
Improve test_webgl_triangle.html
Diffstat (limited to 'tests/html/test_webgl_triangle.html')
-rw-r--r-- | tests/html/test_webgl_triangle.html | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/tests/html/test_webgl_triangle.html b/tests/html/test_webgl_triangle.html index 2386f3fa1bf..c1559a1b11f 100644 --- a/tests/html/test_webgl_triangle.html +++ b/tests/html/test_webgl_triangle.html @@ -31,6 +31,8 @@ void main() { </script> <script type="text/javascript"> +(function() { + var canvas; function initWebGL() { @@ -41,6 +43,10 @@ void main() { } var gl = initWebGL(); + if (!gl) { + alert("No webgl context found!"); + return; + } // Setup Shaders: var v = document.getElementById("vertexshader").firstChild.nodeValue; @@ -54,7 +60,8 @@ void main() { gl.compileShader(vs); if (!gl.getShaderParameter(vs, gl.COMPILE_STATUS)) { - alert(gl.getShaderInfoLog(vs)); + alert("Shader failed to compile. Reason: " + gl.getShaderInfoLog(vs)); + return; } var fs = gl.createShader(gl.FRAGMENT_SHADER); @@ -62,7 +69,8 @@ void main() { gl.compileShader(fs); if (!gl.getShaderParameter(fs, gl.COMPILE_STATUS)) { - alert(gl.getShaderInfoLog(fs)); + alert("Shader failed to compile. Reason: " + gl.getShaderInfoLog(fs)); + return; } program = gl.createProgram(); @@ -70,8 +78,16 @@ void main() { gl.attachShader(program, fs); gl.linkProgram(program); - // if (!gl.getProgramParameter(program, gl.LINK_STATUS)) - // alert(gl.getProgramInfoLog(program)); + if (!gl.getProgramParameter(program, gl.LINK_STATUS)) { + alert("Shader failed to link. Reason: " + gl.getProgramInfoLog(program)); + return; + } + + gl.validateProgram(program); + if (!gl.getProgramParameter( program, gl.VALIDATE_STATUS)) { + alert("Program failed to validate. Reason: " + gl.getProgramInfoLog(program)); + return; + } // Setup Geometry var vertices = new Float32Array([ @@ -107,6 +123,8 @@ void main() { // Draw gl.drawArrays(gl.TRIANGLES, 0, 3); + +})(); </script> </body> </html> |