Index: content/test/data/gpu/pixel_webgl.html |
diff --git a/content/test/data/gpu/pixel_webgl.html b/content/test/data/gpu/pixel_webgl.html |
index 68fab9e8b3fb43a248815944671bfa81abe80b96..b1f60f1f6b3594cc582da245a31158fc6fe7db72 100644 |
--- a/content/test/data/gpu/pixel_webgl.html |
+++ b/content/test/data/gpu/pixel_webgl.html |
@@ -15,21 +15,7 @@ that the baseline images are regenerated on the next run. |
} |
</style> |
-<script id="shader-vs" type="x-shader/x-vertex"> |
-attribute vec3 pos; |
-void main(void) |
-{ |
- gl_Position = vec4(pos, 1.0); |
-} |
-</script> |
- |
-<script id="shader-fs" type="x-shader/x-fragment"> |
-precision mediump float; |
-void main(void) |
-{ |
- gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); |
-} |
-</script> |
+<script src="pixel_webgl_util.js"></script> |
<script> |
var g_swapsBeforeAck = 15; |
@@ -54,85 +40,13 @@ function drawSomeFrames() |
domAutomationController.send("SUCCESS"); |
} else { |
g_swapsBeforeAck--; |
- draw(gl); |
+ drawTriangle(gl); |
window.webkitRequestAnimationFrame(drawSomeFrames); |
} |
} |
-function initGL(canvas) |
-{ |
- var gl = null; |
- try { |
- gl = canvas.getContext("experimental-webgl"); |
- } catch (e) {} |
- if (!gl) { |
- try { |
- gl = canvas.getContext("webgl"); |
- } catch (e) { } |
- } |
- return gl; |
-} |
- |
-function setupShader(gl, source, type) { |
- var shader = gl.createShader(type); |
- gl.shaderSource(shader, source); |
- gl.compileShader(shader); |
- if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) |
- return null; |
- return shader; |
-} |
-function setupProgram(gl, vs_id, fs_id) { |
- var vs_node = document.getElementById(vs_id); |
- var fs_node = document.getElementById(fs_id); |
- if (!vs_node || !fs_node) |
- return null; |
- var vs = setupShader(gl, vs_node.text, gl.VERTEX_SHADER); |
- var fs = setupShader(gl, fs_node.text, gl.FRAGMENT_SHADER); |
- if (!vs || !fs) |
- return null; |
- var program = gl.createProgram(); |
- gl.attachShader(program, vs); |
- gl.attachShader(program, fs); |
- gl.linkProgram(program); |
- if (!gl.getProgramParameter(program, gl.LINK_STATUS)) |
- return null; |
- gl.useProgram(program); |
- return program; |
-} |
-function setupBuffer(gl) { |
- var buffer = gl.createBuffer(); |
- gl.bindBuffer(gl.ARRAY_BUFFER, buffer); |
- var vertexData = [ |
- 0.0, 0.6, 0.0, // Vertex 1 position |
- -0.6, -0.6, 0.0, // Vertex 2 position |
- 0.6, -0.6, 0.0, // Vertex 3 position |
- ]; |
- gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertexData), gl.STATIC_DRAW); |
-} |
- |
-function setup(gl) { |
- var program = setupProgram(gl, "shader-vs", "shader-fs"); |
- if (!program) |
- return false; |
- var posAttr = gl.getAttribLocation(program, "pos"); |
- gl.enableVertexAttribArray(posAttr); |
- setupBuffer(gl); |
- var stride = 3 * Float32Array.BYTES_PER_ELEMENT; |
- gl.vertexAttribPointer(posAttr, 3, gl.FLOAT, false, stride, 0); |
- gl.clearColor(0.0, 0.0, 0.0, 0.0); |
- gl.viewport(0, 0, 200, 200); |
- gl.disable(gl.DEPTH_TEST); |
- if (gl.getError() != gl.NO_ERROR) |
- return false; |
- return true; |
-} |
- |
-function draw(gl) { |
- gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); |
- gl.drawArrays(gl.TRIANGLES, 0, 3); |
-} |
</script> |
</head> |
<body onload="main()"> |