then no need to render anything
          if (!object.visible) return;

          // Apply transformations
          transforms.calculateModelView();
          transforms.push();
          transforms.setMatrixUniforms();
          transforms.pop();

          // Set uniforms
          gl.uniform3fv(program.uKa, object.Ka);
          gl.uniform3fv(program.uKd, object.Kd);
          gl.uniform3fv(program.uKs, object.Ks);
          gl.uniform1f(program.uNs, object.Ns);
          gl.uniform1f(program.uD, object