I wish to draw 2D shapes on the xy plane (z=0) in WebGL.

I'm reading from [here](http://learningwebgl.com/lessons/).

Here is my drawScene function :

```
function drawScene() {
    gl.viewport(0, 0, gl.viewportWidth, gl.viewportHeight);
    gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);

    mat4.perspective(45, gl.viewportWidth / gl.viewportHeight, 0.1, 100.0, pMatrix);

    mat4.identity(mvMatrix);
    mat4.translate(mvMatrix, [2.0, 5.0, -1.0]);

    mvPushMatrix();
    gl.bindBuffer(gl.ARRAY_BUFFER, squareVertexPositionBuffer);
    gl.vertexAttribPointer(shaderProgram.vertexPositionAttribute, squareVertexPositionBuffer.itemSize, gl.FLOAT, false, 0, 0);

    gl.bindBuffer(gl.ARRAY_BUFFER, squareVertexColorBuffer);
    gl.vertexAttribPointer(shaderProgram.vertexColorAttribute,squareVertexColorBuffer.itemSize, gl.FLOAT, false, 0, 0);

    setMatrixUniforms();
    gl.drawArrays(gl.TRIANGLE_FAN, 0, squareVertexPositionBuffer.numItems);

        mvPopMatrix();
}

```

squareVertexPositionBuffer and squareVertexColorBuffer are the shape and color buffers of my object.

The issue is here:
`mat4.perspective(45, gl.viewportWidth / gl.viewportHeight, 0.1, 100.0, pMatrix);` and
`mat4.translate(mvMatrix, [2.0, 5.0, -1.0]);`

I wish to draw the object on the z=0 plane.
So when I change that to 
`mat4.perspective(45, gl.viewportWidth / gl.viewportHeight, 0.0, 100.0, pMatrix);` and 
`mat4.translate(mvMatrix, [2.0, 5.0, 0.0]);`

nothing gets displayed on the screen.
Why is this happening?

Also, are the numbers we specify in WebGL to translate and store coordinates of shapes in buffers in screen pixel units?