pbuffers have been deprecated for a very long time (since 10.7), all of NSOpenGLPixelBuffer is marked deprecated too (from 10.7 on). Depending on what you mean by "broken", that might be a factor. Core Profile contexts don't work with pbuffers at all, IIRC, I'm not sure what others problems they may have elsewhere.
For off-drawable rendering you should be using FBOs. On Feb 9, 2015, at 9:52 AM, Mark Coniglio <m...@troikatronix.com> wrote: > Hello, > > My software Isadora adopts .qtz files to allow them to function video > effects/video generators. > > Code that has worked a long while, up to and including 10.9, is broken in > 10.10 Yosemite. > > Specifically, this relates to modules that use the Billboard as an output. > For these modules, I create QCRenderer context in which to capture the > output, and then pass that on to other modules in my app. (Code used to do > this is below.) > > Can anyone offer any advice about why this functionality has stopped working > in 10.10? > > Thanks in Advance, > Mark > > --- CODE SNIPPET - CREATING THE CONTEXT --- > > mGLPixelBuffer = [[NSOpenGLPixelBuffer alloc] > initWithTextureTarget:GL_TEXTURE_RECTANGLE_EXT textureInternalFormat:GL_RGBA > textureMaxMipMapLevel:0 pixelsWide:mOpenGLPixelWidth > pixelsHigh:mOpenGLPixelHeight]; > if (mGLPixelBuffer == NULL) { > NSLog(@"Cannot create OpenGL pixel buffer"); > } > > // ------------------------------------------------------------ > // CREATE THE OPENGL CONTEXT > > NSOpenGLPixelFormat* openGLFormat = NULL; > > if (mGLPixelBuffer != NULL) { > > // create a pixel format > NSOpenGLPixelFormatAttribute attributes[] = { > NSOpenGLPFANoRecovery, > NSOpenGLPFAAccelerated, > NSOpenGLPFAPixelBuffer, > NSOpenGLPFAScreenMask, (NSOpenGLPixelFormatAttribute) > CGDisplayIDToOpenGLDisplayMask(finalDisplayID), > NSOpenGLPFAColorSize, (NSOpenGLPixelFormatAttribute) 32, > NSOpenGLPFADepthSize, (NSOpenGLPixelFormatAttribute) 24, > (NSOpenGLPixelFormatAttribute) 0 > }; > > NSOpenGLPixelFormat* openGLFormat = [[[NSOpenGLPixelFormat alloc] > initWithAttributes:attributes] autorelease]; > > // NOTE: the pixel format is not retained by [NSOpenGLContext > initWithFormat] > mQCGLContext = [[NSOpenGLContext alloc] initWithFormat:openGLFormat > shareContext:NULL]; > > if (mQCGLContext != NULL) { > [mQCGLContext setPixelBuffer:mGLPixelBuffer cubeMapFace:0 > mipMapLevel:0 currentVirtualScreen:[mQCGLContext currentVirtualScreen]]; > } else { > mGLPixelBuffer = NULL; > NSLog(@"Cannot create OpenGL context"); > } > } > > ----- CODE SNIPPET - SETTING THE CONTEXT ----- > > mQCRenderer = [[QCRenderer alloc] initWithOpenGLContext:mQCGLContext > pixelFormat:openGLFormat file:(NSString*) cfPluginFilePathStr]; > -- > ======================================================================= > Mark Coniglio | m...@troikatronix.com > TroikaTronix | http://www.troikatronix.com/ > Isadora® | http://www.troikatronix.com/isadora.html > | (interactive media processing environment) > ======================================================================= > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Quartzcomposer-dev mailing list (Quartzcomposer-dev@lists.apple.com) > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/quartzcomposer-dev/christopher_wright%40apple.com > > This email sent to christopher_wri...@apple.com -- Christopher Wright christopher_wri...@apple.com
_______________________________________________ Do not post admin requests to the list. They will be ignored. Quartzcomposer-dev mailing list (Quartzcomposer-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com