Framebuffer Object

Started by
3 comments, last by lc_overlord 13 years, 11 months ago
Hi everyone, I need some help trying to set up a framebuffer object. I have this in my header:

	#define GL_GLEXT_PROTOTYPES

	#include <GL/gl.h>
	#include <GL/glu.h>
	#include <gl/glext.h>
	#include <gl/wglext.h>

I have this in my code:

	unsigned int myFBO;
	glGenFramebuffersEXT(1, &myFBO);

However, VC is giving me this error: unresolved external symbol _glGenFramebuffersECT@8 [Edited by - mullikine on May 17, 2010 1:22:00 AM]
Advertisement
Do you have experience dealing with opengl function pointers? You can't just load a header file and start calling extensions.

I'll recommend that you go download/install GLEW, then you won't have to mess with querying the function pointers, you'll just be able to call glGenFramebuffers().
[size=2]My Projects:
[size=2]Portfolio Map for Android - Free Visual Portfolio Tracker
[size=2]Electron Flux for Android - Free Puzzle/Logic Game
Thanks karwosts! This is pointed me in the right direction.
Now that I have the framebuffer working, I've run into a harder problem. I'm rendering a bunch of polygons and textures to a single texture via the framebuffer as follows.

glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, FBO);glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, texture, 0);glClearColor(0.0f, 0.0f, 1.0f, 0.0f);glClear(GL_COLOR_BUFFER_BIT);for (int i = 0; i < nbits; i++) {	bits->draw();}glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);


The problem is when I try to use this texture it disregards the alpha value of glClearColor and always comes out opaque. The code above will result in a texture which has a blue background for example. If I comment out bits->draw(); I'll get a solid blue texture. First of all, is what I'm trying to accomplish even possible?

Thanks in advance
Could be one or more of tree things.

1. you might not have set the FBO texture to RGBA
2. you might not have used blending and the right blendfunc when rendering the FBO texture to something
3. you might have misunderstood how glClear actually works

This topic is closed to new replies.

Advertisement