title: glm.project() function showing error even though arguments are of proper type
body: <p>I am new at <code>glm</code> and I am trying to convert 3d object coordinates into window coordinates using <code>glm.project()</code> method in pyqt5 GUI.</p>
  
  <p>Here is the code for on mouse press event to convert 3d coordinate into window coordinates.</p>
  
  <pre class="lang-py prettyprint-override"><code>def mousePressEvent(self, event):
          self.makeCurrent()
          objCoord = glm.vec3(-1,-1,1)
          coord = glm.project(objCoord, self.cube['model']*self.cube['view'], self.cube['projection'], glm.vec4(0,0,self.width, self.height))
          self.doneCurrent()
          print(coord)
  
  </code></pre>
  
  <p>I am passing proper arguments.</p>
  
  <p>Here you can see arguments used in this.</p>
  
  <pre class="lang-py prettyprint-override"><code>self.cube['model'] = glm.mat4(1)
  </code></pre>
  
  <pre class="lang-py prettyprint-override"><code>self.cube['view'] = glm.lookAt(
              glm.vec3(0,0,self.z),
              glm.vec3(0,0,0),
              glm.vec3(0,1,0)
          )
  </code></pre>
  
  <pre class="lang-py prettyprint-override"><code>self.cube['projection'] = glm.perspective(glm.radians(45), width / height, 2.0, 100.0)
  </code></pre>
  
  <p>but it is showing the following error of invalid arguments types.</p>
  
  <pre><code>Traceback (most recent call last):
    File "openglWidget.py", line 147, in mousePressEvent
      glm.project(objCoord, self.cube['model']*self.cube['view'], self.cube['projection'], glm.vec4(0,0,self.width, self.height))
  TypeError: invalid argument type(s) for project()
  Aborted (core dumped)
  </code></pre>
  
  <p>I am very frustrated by this.</p>
  
  <p>Can anybody help me what is wrong with this code and what can I do here?</p>