tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_highp_fs.html (1482B)


      1 <!DOCTYPE HTML>
      2 <title>WebGL test: `highp` support</title>
      3 <script src="/tests/SimpleTest/SimpleTest.js"></script>
      4 <link rel="stylesheet" href="/tests/SimpleTest/test.css">
      5 <script src="driver-info.js"></script>
      6 <script src="webgl-util.js"></script>
      7 <script id="shader-vs" type="x-shader/x-vertex">
      8 
      9 void main(void) {
     10  gl_Position = vec4(vec3(0.0), 1.0);
     11 }
     12 
     13 </script>
     14 <script id="shader-fs" type="x-shader/x-fragment">
     15 
     16 precision highp float;
     17 
     18 void main(void) {
     19  gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
     20 }
     21 
     22 </script>
     23 <body>
     24 <canvas id="c"></canvas>
     25 <script>
     26 
     27 // Give ourselves a scope to return early from:
     28 (function() {
     29  var gl = c.getContext('webgl');
     30  if (!gl) {
     31    todo(false, 'WebGL is unavailable.');
     32    return;
     33  }
     34 
     35  function checkGLError(func, info) {
     36    var error = gl.getError();
     37    var prefix = info ? ('[' + info + '] ') : ''
     38    func(!error, prefix + 'gl.getError should be 0x0, was 0x' + error.toString(16) + '.');
     39  }
     40 
     41  var format = gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT);
     42  var prog = WebGLUtil.createProgramByIds(gl, 'shader-vs', 'shader-fs');
     43  checkGLError(ok);
     44 
     45  if (format) {
     46    ok(prog, 'Frag shader with unconditional `precision highp float` should ' +
     47             'link if `getShaderPrecisionFormat` gives a format for it.');
     48  } else {
     49    ok(!prog, 'Frag shader with unconditional `precision highp float` should ' +
     50              'NOT link if `getShaderPrecisionFormat` gives NO format for it.');
     51  }
     52 })();
     53 
     54 </script>