Hi guys.
I have a 2D platformer game, written in LWJGL3 and I use libgdx-box2D for physics. I have some little bug I’d like to debug and would be good if I can see the collision shapes visually. I know I can use Box2DDebugRenderer, but it fails wherever I put it.
java.lang.NullPointerException
at com.badlogic.gdx.graphics.glutils.ShaderProgram.loadShader(ShaderProgram.java:209)
at com.badlogic.gdx.graphics.glutils.ShaderProgram.compileShaders(ShaderProgram.java:188)
at com.badlogic.gdx.graphics.glutils.ShaderProgram.<init>(ShaderProgram.java:171)
at com.badlogic.gdx.graphics.glutils.ImmediateModeRenderer20.createDefaultShader(ImmediateModeRenderer20.java:233)
at com.badlogic.gdx.graphics.glutils.ImmediateModeRenderer20.<init>(ImmediateModeRenderer20.java:56)
at com.badlogic.gdx.graphics.glutils.ShapeRenderer.<init>(ShapeRenderer.java:116)
at com.badlogic.gdx.graphics.glutils.ShapeRenderer.<init>(ShapeRenderer.java:111)
at com.badlogic.gdx.graphics.glutils.ShapeRenderer.<init>(ShapeRenderer.java:107)
at com.badlogic.gdx.physics.box2d.Box2DDebugRenderer.<init>(Box2DDebugRenderer.java:62)
at com.badlogic.gdx.physics.box2d.Box2DDebugRenderer.<init>(Box2DDebugRenderer.java:56)
As I see in the ShaderProgram,
GL20 gl = Gdx.gl20;
produces null and that’s the problem.
How can I initialize this static variable?
I don’t want to use libgdx, just the box2d wrapper, and I know, there is JBox2D but somewhere I read that gdx’s wrapper is mutch faster and up2date. Is that true?