Ich erzeuge einen eigenen Framebuffer und dann schalte ich das Multisampling aus. Also bevor ich in die Textur rendere mache ich folgendes:
Code: Alles auswählen
glGenFramebuffers(1, &fbo);
glBindFramebuffer(GL_FRAMEBUFFER, fbo);
glGenTextures(1, &tex);
glBindTexture(GL_TEXTURE_2D, tex);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, Width, Height, 0, GL_RGB, GL_UNSIGNED_BYTE, 0);
glGenRenderbuffers(1, &dbo);
glBindRenderbuffer(GL_RENDERBUFFER, dbo);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT, Width, Height);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, dbo);
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, tex, 0);
glBindFramebuffer(GL_FRAMEBUFFER, fbo);
und danach schalte ich den angegebenen Rest aus.
Danke.
P.s.: Der Context ist auch ohne Multisampling initialisiert:
Code: Alles auswählen
glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);