Witam piszę grę 2D na zaliczenie przedmiotu. Napisałem okno oraz klasę odpowiedzialną za sprawdzenie czy klawisz został wciśnięty. Po skompilowaniu eclipse pokazuje następujące błędy:
Exception in thread “main” java.lang.NullPointerException
at org.lwjgl.system.Checks.check(Checks.java:100)
at org.lwjgl.glfw.GLFW.glfwGetKey(GLFW.java:3338)
at Engine.IO.isKeyDown(IO.java:23)
at Engine.IO.update(IO.java:69)
at Engine.IO.(IO.java:18)
at Main.Game.(Game.java:16)
at Main.Main.main(Main.java:9)
Nie ma nigdzie pustej wartości, bo natywne bindingi tak nie działają. Jakbyś przejrzał kod na github, wiedziałbyś, że jest to wynik przekazania long window = 0 (NULL w rozumieniu C). Tworzysz okno wołając konstruktor Window, ale nigdy nie wołasz create, które faktycznie alokuje natywne okno w metodzie Window#create(), gdzie jest wywołanie GLFW#glfwCreateWindow()
Ogólnie kod jest tak nieczytelny, że prawdopodobnie nawet jak to poprawisz to zgubisz się jeszcze 10 razy w innych rzeczach…