Professional Documents
Culture Documents
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
var vertexShaderSource =
void main() {
gl_Position = u_Ry*u_Rx*vec4(a_coords, 1.0);
v_color = a_colors;
}`;
var fragmentShaderSource =
var gl;
var a_coords_location;
var a_coords_buffer;
var a_colors_location;
var a_colors_buffer;
var bufferInd;
var u_matrix_rotateX_location;
var u_matrix_rotateY_location;
function draw() {
gl.clearColor(0.0,0.0,0.0,1);
gl.enable(gl.DEPTH_TEST);
gl.enable(gl.CULL_FACE);
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
var coords = new Float32Array([ // Front face
-0.5, -0.5, 0.5,//0
0.5, -0.5, 0.5,//1
0.5, 0.5, 0.5,//2
-0.5, 0.5, 0.5,//3
//0, 1, 2, 0, 2, 3, // Front face
// Back face
-0.5, -0.5, -0.5,//4
-0.5, 0.5, -0.5,//5
0.5, 0.5, -0.5,//6
0.5, -0.5, -0.5,//7
// Top face
-0.5, 0.5, -0.5,//8
-0.5, 0.5, 0.5,//9
0.5, 0.5, 0.5,//10
0.5, 0.5, -0.5,//11
// Bottom face
-0.5, -0.5, -0.5,//12
0.5, -0.5, -0.5,//13
0.5, -0.5, 0.5,//14
-0.5, -0.5, 0.5,//15
// Right face
0.5, -0.5, -0.5,//16
0.5, 0.5, -0.5,//17
0.5, 0.5, 0.5,//18
0.5, -0.5, 0.5,//19
// Left face
-0.5, -0.5, -0.5,//20
-0.5, -0.5, 0.5,//21
-0.5, 0.5, 0.5,//22
-0.5, 0.5, -0.5]);//23
//Back face
]);
gl.bindBuffer(gl.ARRAY_BUFFER, a_coords_buffer);
gl.bufferData(gl.ARRAY_BUFFER, coords, gl.STATIC_DRAW);
gl.vertexAttribPointer(a_coords_location, 3, gl.FLOAT, false, 0,
0);
gl.enableVertexAttribArray(a_coords_location);
gl.bindBuffer(gl.ARRAY_BUFFER, a_colors_buffer);
gl.bufferData(gl.ARRAY_BUFFER, colors, gl.STATIC_DRAW);
gl.vertexAttribPointer(a_colors_location, 3, gl.FLOAT, false, 0,
0);
gl.enableVertexAttribArray(a_colors_location);
return prog;
}
function initGL() {
var prog = createProgram( gl, vertexShaderSource,
fragmentShaderSource );
gl.useProgram(prog);
bufferInd = gl.createBuffer();
function init() {
var canvas = document.getElementById("webglcanvas");
gl = canvas.getContext("webgl");
initGL();
draw();
}
init();
</script>
</html>
TransMat-1(b).html
Displaying TransMat-1(b).html.