OLD | NEW |
| (Empty) |
1 <html> | |
2 <head> | |
3 <script src="../../../resources/js-test.js"></script> | |
4 <script src="resources/webgl-test.js"></script> | |
5 <script src="resources/webgl-test-utils.js"> </script> | |
6 </head> | |
7 <script> | |
8 description("Checks that copying canvas results to a WebGL texture functions wit
hout error."); | |
9 | |
10 var wtu = WebGLTestUtils; | |
11 | |
12 if (window.testRunner) { | |
13 testRunner.dumpAsText(); | |
14 testRunner.waitUntilDone(); | |
15 } | |
16 | |
17 var canvas; | |
18 var gl; | |
19 var ctx; | |
20 | |
21 function draw() | |
22 { | |
23 ctx.fillStyle = "rgb(200, 0, 0)"; | |
24 ctx.fillRect(0, 0, 256, 256); | |
25 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, canvas2d); | |
26 | |
27 wtu.drawQuad(gl); | |
28 wtu.checkCanvasRect(gl, 0, 0, 1, 1, [200, 0, 0, 255], "Should have rendered re
d.", 1); | |
29 | |
30 ctx.fillStyle = "rgb(0, 0, 200)"; | |
31 ctx.fillRect(0, 0, 256, 256); | |
32 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, canvas2d); | |
33 ctx.fillStyle = "rgb(200, 0, 0)"; | |
34 ctx.fillRect(0, 0, 256, 256); | |
35 | |
36 wtu.drawQuad(gl); | |
37 wtu.checkCanvasRect(gl, 0, 0, 1, 1, [0, 0, 200, 255], "Should have rendered bl
ue.", 1); | |
38 | |
39 if (window.testRunner) | |
40 testRunner.notifyDone(); | |
41 } | |
42 | |
43 window.onload = function() | |
44 { | |
45 if (window.initNonKhronosFramework) | |
46 window.initNonKhronosFramework(false); | |
47 | |
48 canvas = document.getElementById("webgl-canvas"); | |
49 gl = create3DContext(canvas); | |
50 | |
51 canvas2d = document.getElementById("canvas-2d"); | |
52 | |
53 // Set a size that ensures a hardware-accelerated canvas. | |
54 canvas2d.width = 256; | |
55 canvas2d.height = 256; | |
56 ctx = canvas2d.getContext("2d"); | |
57 | |
58 var program = wtu.setupTexturedQuad(gl); | |
59 var bufferObjects = wtu.setupUnitQuad(gl); | |
60 | |
61 var texture = gl.createTexture(); | |
62 gl.bindTexture(gl.TEXTURE_2D, texture); | |
63 gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR); | |
64 | |
65 gl.uniform1i(gl.getUniformLocation(program, "tex"), 0); | |
66 gl.viewport(0, 0, canvas.width, canvas.height); | |
67 | |
68 // Ensure that the compositor has become active. | |
69 setTimeout(draw, 0); | |
70 } | |
71 </script> | |
72 <body> | |
73 <div id="description"></div> | |
74 <div id="console"></div> | |
75 <canvas id="webgl-canvas" width="32px" height="32px"></canvas> | |
76 <canvas id="canvas-2d" style="transform: translateZ(0);"></canvas> | |
77 </body> | |
78 </html> | |
OLD | NEW |