tor-browser

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

tex-image-and-sub-image-3d-with-image-bitmap-from-blob.js (1517B)


      1 /*
      2 Copyright (c) 2019 The Khronos Group Inc.
      3 Use of this source code is governed by an MIT-style license that can be
      4 found in the LICENSE.txt file.
      5 */
      6 
      7 function generateTest(internalFormat, pixelFormat, pixelType, prologue, resourcePath, defaultContextVersion) {
      8    var wtu = WebGLTestUtils;
      9    var tiu = TexImageUtils;
     10    var gl = null;
     11    var successfullyParsed = false;
     12 
     13    function init()
     14    {
     15        description('Verify texImage3D and texSubImage3D code paths taking ImageBitmap created from a Blob (' + internalFormat + '/' + pixelFormat + '/' + pixelType + ')');
     16 
     17        if(!window.createImageBitmap || !window.ImageBitmap) {
     18            finishTest();
     19            return;
     20        }
     21 
     22        // Set the default context version while still allowing the webglVersion URL query string to override it.
     23        wtu.setDefault3DContextVersion(defaultContextVersion);
     24        gl = wtu.create3DContext("example");
     25 
     26        if (!prologue(gl)) {
     27            finishTest();
     28            return;
     29        }
     30 
     31        gl.clearColor(0,0,0,1);
     32        gl.clearDepth(1);
     33 
     34        var xhr = new XMLHttpRequest();
     35        xhr.open("GET", resourcePath + "red-green-semi-transparent.png");
     36        xhr.responseType = 'blob';
     37        xhr.onload = function() {
     38            var blob = xhr.response;
     39            runImageBitmapTest(blob, 0.5, internalFormat, pixelFormat, pixelType, gl, tiu, wtu, true)
     40            .then(() => {
     41                finishTest();
     42            });
     43        };
     44        xhr.send();
     45    }
     46 
     47    return init;
     48 }