After having successfully used the PBuffers for offscreen rendering with LWJGL I would like to use the FrameBuffer Object for doing offscreen graphics.
The docs are unclear (at least for me) and I didn’t manage to have something working.
My aim is not to use render-to-texture, but only allocate an FBO, bind it to a ARGB 32bit Render Buffer Object and then read the pixels back from it.
My init code:
IntBuffer fbID = BufferUtils.createIntBuffer(1);
IntBuffer rbID = BufferUtils.createIntBuffer(1);
EXTFramebufferObject.glGenRenderbuffersEXT(rbID);
EXTFramebufferObject.glGenFramebuffersEXT(fbID);
EXTFramebufferObject.glRenderbufferStorageEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT,EXTBgra.GL_BGRA_EXT,getPhysicalWidth(), getPhysicalHeight());
EXTFramebufferObject.glBindFramebufferEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT,fbID.get(0));
EXTFramebufferObject.glFramebufferRenderbufferEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT, EXTFramebufferObject.GL_COLOR_ATTACHMENT0_EXT, EXTFramebufferObject.GL_RENDERBUFFER_EXT, fbID.get(0));
EXTFramebufferObject.glBindFramebufferEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT, fbID.get(0));
..
GL11.gl calls here.
checkError() signals an error when I call glRenderbufferStorageEXT().
What I’m missing ?
Help appreciated (Spasi, are you there ?).


