gecko-dev/dom/canvas/test/reftest/webgl-hanging-scissor-test....

58 строки
1.2 KiB
HTML

<!DOCTYPE html>
<html class="reftest-wait">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="webgl-utils.js"></script>
<script type="text/javascript">
/* Hanging Scissor Test
*
* Clear the canvas to green, but create and enable and set scissor values
* before returning. This can fail if we blindly blit or read from the screen
* without disabling scissor-test.
*
* Failure should look like only the top-left quadrant is rendered.
*/
"use strict";
function renderGL(gl) {
gl.clearColor(0.0, 1.0, 0.0, 1.0);
gl.clear(gl.COLOR_BUFFER_BIT);
gl.enable(gl.SCISSOR_TEST);
gl.scissor(0, 128, 128, 128);
gl.finish();
}
function renderFailure(canvas) {
// This will also trigger RAF for us.
var context = canvas.getContext("2d");
context.fillText('WebGL failed.', 64, 64);
}
function runTest() {
var canvas = document.getElementById("canvas");
var gl = initGL(canvas);
if (gl)
renderGL(gl);
else
renderFailure(canvas);
waitForComposite(testComplete);
}
function testComplete() {
document.documentElement.removeAttribute("class");
}
</script>
</head>
<body onload="rAF(runTest);">
<canvas id="canvas" width="256" height="256"></canvas>
</body>
</html>