我有一个投影矩阵,我想有一个照相机。我使用LWJGL3和JOML。我试图用偏移量转换投影矩阵,但它变得很奇怪。我还尝试了.lookAt函数,但它也无法正常工作。
我有一个窗口的投影矩阵
projectionMatrix = new Matrix4f().ortho((float) -(width / 2), (float) (width / 2), (float) -(height / 2), (float) (height / 2), -1.0f, 1.0f);0
这会将矩阵加载到着色器中
public static void loadMatrix4f(int location, Matrix4f matrix4f)
{
FloatBuffer floatBuffer = BufferUtils.createFloatBuffer(16);
GL20.glUniformMatrix4fv(location, false, matrix4f.get(floatBuffer));
}
现在我要移动相机。
Matrix4f mvp = projectionMatrix.translate(10f, 0f, 0f);
Shaders.loadMatrix4f(Shaders.getUniformLocation(program, "u_MVP"), mvp);
这是发生了什么 (https://imgur.com/a/asXyz3q)