[ad_1]
I am attempting to arrange perspective projection in OpenGL nevertheless it would not work
void Digicam::setViewportSize(float left, float proper, float backside, float prime)
{
constexpr float fov = glm::radians(45.0f);
m_projectionMatrix = glm::perspective(fov, (proper - left) / (prime - backside), 0.1f, 10.0f);
recalculateViewMatrix();
}
void Digicam::recalculateViewMatrix()
{
glm::mat4 translate = glm::translate(glm::mat4(1.0f), glm::vec3(m_position, 0.0f));
glm::mat4 rotate = glm::rotate(glm::mat4(1.0f), m_rotation, glm::vec3(0.0f, 0.0f, 1.0f));
glm::mat4 scale = glm::scale(glm::mat4(1.0f), glm::vec3(m_scale, m_scale, 1.0f));
m_viewMatrix = translate * rotate * scale;
m_viewMatrix = glm::inverse(m_viewMatrix);
m_viewProjectionMatrix = m_projectionMatrix * m_viewMatrix;
}
I add viewProjectionMatrix to shader and use it like this:
gl_Position = u_viewProjectionMatrix * vec4(a_position, 1.0);
It simply would not present something.
I double checked if I cross good left, proper, backside, prime values and it needs to be all good.
Taking part in with zNear and zFar did not change something.
Notice – After I use ortho, it really works like a attraction:
m_projectionMatrix = glm::ortho(left, proper, backside, prime, 1.0f, -1.0f);
[ad_2]