在C ++中获取没有GLM的模型视图投影矩阵

时间:2018-02-19 14:06:31

标签: c++ math graphics opengl-es-2.0

我有这个使用库GLM的代码,它使用正确的MVP矩阵设置变量projMatrix,稍后我将它作为一个统一的Shader函数赋予它,并且它以这种方式工作。 / p>

   void setMVP(GLfloat r, GLfloat l, GLfloat t, GLfloat b, GLfloat n, GLfloat f){
       glm::mat4 model = glm::mat4(1.0f);
       glm::mat4 view = glm::lookAt(
                                     glm::vec3(l, b, n),
                                     glm::vec3(l, b, f),
                                     glm::vec3(0.0f,1.0f,0.0f));
       glm::mat4 proj =  glm::ortho(l, r, b, t, n, f);
       projMatrix = proj * view * model;
   }

我现在要删除glm库,因为我只需要它来完成这个小任务,所以我想自己计算矩阵,以避免为一个任务创建一个完整的库。

我正在使用在线矩阵计算器给出变量方面的结果,所以我只需要将结果值分配给数组索引,我正在使用它,但它似乎并没有这样工作。 (Link)该链接打开了我正在做的确切乘法。但是,当我使用它们不起作用的价值时。我一定错过了什么。

这是我的细分。

1)模型矩阵是同一性的,所以如果我将它相乘则无关紧要。

2)对于正投影我正在使用以下

img(l =左,r =右,t =顶部,b =底部,n =近,f =远)

3)对于相机放置,我设置了glm库已经到位并且工作正常,所以我认为我不需要修改它。

0 个答案:

没有答案