Nochmal: Das sind 300 Zeilen code, in denen du (no offense) planlos “irgendwas” geändert hast. Wer soll sich das antun?
Funktionieren die verlinkten Beispiele?
Wenn nein: Issue aufmachen (oder hier fragen).
Wenn ja: https://github.com/JOML-CI/joml-lwjgl3-demos/blob/master/src/org/joml/lwjgl/FirstPersonCameraDemo.java und https://github.com/JOML-CI/joml-lwjgl3-demos/blob/master/src/org/joml/lwjgl/ShaderExampleLH.java nachvollziehen und los.
Aber beim Drüberscrollen:
Model.get(new float[16])
sieht SEHR stark falsch aus (ich bin nicht 100% sicher, aber ziemlich)
Siehe https://github.com/JOML-CI/JOML#using-with-lwjgl
FloatBuffer fb = BufferUtils.createFloatBuffer(16);
new Matrix4f().perspective((float) Math.toRadians(45.0f), 1.0f, 0.01f, 100.0f)
.lookAt(0.0f, 0.0f, 10.0f,
0.0f, 0.0f, 0.0f,
0.0f, 1.0f, 0.0f).get(fb);
glUniformMatrix4fv(mat4Location, false, fb);
(Den Buffer am besten nur EINmal global allokieren, aber … das ist ein Detail)