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 }