JOML-CI / JOML

A Java math library for OpenGL rendering calculations
MIT License
729 stars 104 forks source link

Help with perspective projection #315

Closed TypeSafeSchwalbe closed 2 years ago

TypeSafeSchwalbe commented 2 years ago

I need help with creating the projection-view matrix for a perspective camera. I have this piece of code already...

viewMatrix.setLookAt(position, cameraLookAt, cameraUp);
projectionMatrix.setPerspective(fov, aspectRatio, nearPlane, farPlane);
Matrix4f projectionViewMatrix = new Matrix4f().set(projectionMatrix).mul(viewMatrix);
// projectionViewMatrix holds the result!

...that generates a Matrix4f that I can pass to my vertexshader to convert world coordinates to NDC. This currently works... kinda. Everything that gets rendered is inverted on the Y-axis (upside down). I've looked for solutions online, tried the various invert-methods of the Matrix4f-class, but everything I tried just does not render anything (the matrix is probably modified in a weird way)...

TypeSafeSchwalbe commented 2 years ago

Oh wow. The issue actually does not have anything to do with JOML. I rendered my frame buffers upside down... JOML works perfectly fine, and no further method calls were needed. Thank you for making JOML (I would have to write A LOT of code otherwise...)!